-2

プログラムで Async & Await を使用する場合、ルーチンが完了したことを通知するオプションはありますか。

async void button1_Click(object sender, EventArgs e)
{
    await SomeLengthyOperationAsync();
}

SomeLengthyOperationAsync() が終了すると、ユーザーが通知を受け取る方法。Async&Awaitでコールバックオプションを実装する方法を教えてください。ありがとう

4

2 に答える 2

1

これは、文字通り async および await キーワードのポイントです。await 行の後にコードを配置するだけです。このコードは、長いタスクが完了すると実行されます。

于 2013-11-14T10:49:53.433 に答える
0

await;を使用してコールバックをパターン化するのが最善です。メソッドの残りの部分は「コールバック」です。

async void button1_Click(object sender, EventArgs e)
{
  await SomeLengthyOperationAsync();
  // Notify user the operation is complete.
}

より複雑なシナリオがある場合は、Task.WhenAlland/orを使用できますTask.WhenAny

私のasyncイントロが役に立つかもしれません。

于 2013-11-14T10:48:54.417 に答える