当我们在程序中使用 Async & Await 时,是否有任何选项告诉我例程已完成。
async void button1_Click(object sender, EventArgs e)
{
await SomeLengthyOperationAsync();
}
当 SomeLengthyOperationAsync() 完成时,用户将如何获得通知。所以指导我如何使用 Async & Await 实现回调选项。谢谢
当我们在程序中使用 Async & Await 时,是否有任何选项告诉我例程已完成。
async void button1_Click(object sender, EventArgs e)
{
await SomeLengthyOperationAsync();
}
当 SomeLengthyOperationAsync() 完成时,用户将如何获得通知。所以指导我如何使用 Async & Await 实现回调选项。谢谢
这实际上是 async 和 await 关键字的意义所在!您可以简单地将代码放在 await 行之后。一旦冗长的任务完成,此代码将被执行。
最好使用await
;来设计回调模式。该方法的其余部分是您的“回调”。
async void button1_Click(object sender, EventArgs e)
{
await SomeLengthyOperationAsync();
// Notify user the operation is complete.
}
如果您有更复杂的场景,您可以使用Task.WhenAll
和/或Task.WhenAny
.
你可能会发现我的async
介绍很有帮助。