asp.net mvc удерживает выполнение действия до наступления события - PullRequest
1 голос
/ 15 февраля 2012

В asp.net mvc я зарегистрировал прослушиватель событий в моем методе действия. Я хочу, чтобы метод действия ожидал, пока событие не произойдет (поэтому клиент будет ждать ответа сервера, пока не произойдет событие). Есть ли хороший способ сделать это без опроса?

class SomeStateManager
{
    public delegate void SomeDelegate();
    public event SomeDelegate SomeEvent;
}

...

public void MyActionMethod(SomeData data)
{
    SomeStateManager man = GetSomeStateManager();
    man.SomeEvent += () =>
      {
          //want to hold action until this occurs, without polling
      }
}

1 Ответ

1 голос
/ 15 февраля 2012

Я думаю, AsyncController может помочь. быстрый поиск в Google должен дать много информации.

Обратите внимание, что не стоит ждать события в обычном контроллере.Пока вы ожидаете, поток, обрабатывающий запрос, не может делать что-либо еще.Поскольку существует ограниченный пул потоков, доступных для запросов, вы можете в конечном итоге заблокировать все приложение, если достаточное количество одновременных запросов ожидает событие.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...