асинхронный вызов WebService и повторный запрос
От: loxmatiy Россия  
Дата: 02.10.06 11:05
Оценка:
Пишу веб-сервис, который принимает команды от пользователей, складывает в очередь и возвращает по запросу.
есть 2 метода
[WebMethod(true)]
void pushCommand(Command cmd)
{
    commandList.Add(cmd);
}

[WebMethod(true)]
Command[] getCommands()
{
    int lastCmd = Session[LAST_CMD];
    Command[] cmds = commandList.getNextCommands(ref lastCmd);
    return cmds;
}

хочу сделать так, чтобы не приходилось периодически опрашивать службу о наличии свежих команд.

1.в клиенте асинхронно вызываю getCommands
2.допустим в getNextCommands, если нет свежих команд, мы ждем, пока не будет новой доступной команды.
3.проблема: при попытке запихнуть службе так сильно желаемую ею команду, служба уже висит в getNextCommands
и ни за какие плюшки оттуда не вылазит.

Как заставить службу обрабатывать другие запросы, пока она ждет завершения первого?
Помогите, кто может.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.