我还没有机会看看C#的异步/等待新功能的CTP,但我想知道的是:C#5中的新异步/等待功能如何与消息循环集成?
它如何与消息循环集成?我假设在一个标准的Windows应用程序(Winforms,WPF)中,通过使用Dispatcher或类似的函数向应用程序的消息循环发送消息来调用continuations?
如果我不使用标准的Windows消息循环会怎么样?例如,在GTK#应用程序或控制台应用程序中(如果在控制台应用程序中确实可以使用该功能)。
我已经在互联网上搜索有关此信息,但无济于事。谁能解释一下?
谢谢Hank。尝试考虑在控制台应用程序中使用异步并失败的情况。所以我认为在这种情况下缺乏同步环境大多是没有意义的。 – Grokys
[AsyncEx](http://nitoasyncex.codeplex.com/)包含一个[AsyncContext](http://nitoasyncex.codeplex.com/wikipage?title=AsyncContext)类,它为控制台应用程序提供异步兼容的主循环(和单元测试)。 –
更多关于'SynchronizationContext' [这里](http://msdn.microsoft.com/en-us/magazine/gg598924.aspx)。 –