У меня есть программа, в которой я использую пользовательское сообщение для вызова некоторых методов из WndProc
, например:
protected override void WndProc(ref Message m)
{
switch ((uint)m.Msg)
{
case WM_QUIT:
Application.Exit();
return;
case WM_STARTOP:
Context.TændNas();
m.Result = new IntPtr(1);
break;
}
base.WndProc(ref m);
}
Теперь я хочу сделать методы асинхронными.Однако я не могу добавить ключевое слово async
к переопределению WndProc
.
Если я сделаю Context.TændNasAsync
async
метод, как я могу вызвать его из WndProc
?
Заключение :
Я иду по предложению @Hans Passant, создавая обработчик событий async
.Таким образом, я могу вызвать метод async
в потоке пользовательского интерфейса, сохраняя его асинхронным (awaitable
).