c#非同期プログラミング
async
またはTask
? void
メソッドはasync
またはTask
を返すことができます。この選択は、メソッドの動作とコールコードとの対話方法を決定するため、不可欠です。 void
Task
を返す必要があります。これにより、発信者はタスクを待って、完了後も実行し続けることができます。 Task
に戻ると、複数のタスクの進行を監視できるTask
などの異常処理や非同期モードを使用することもできます。 async-foreach
void
async
からvoid
を返すのに適した唯一の状況は、たとえば、イベント処理プログラムまたはUIコールバックなど、明確にの型を必要とする場合です。これらの場合、発信者はこの方法を待つことができないはずであり、キーワードは必要ありません。 void
async
トップレベルを避けてくださいメソッドawait
async void
次のコードを検討してください
async void
の使用は不要であり、問題がある可能性があります。
void
メソッドの異常は処理されず、異常な適用挙動を引き起こす可能性があります。
<code class="language-C#">public static async void AsyncMethod2(int num) { await Task.Factory.StartNew(() => Thread.Sleep(num)); }</code>
async void
キーワードを使用して、正しい異常な治療を確保し、非同期操作を追跡および管理する能力を維持することをお勧めします。
以上がasync/awaint in c#:いつタスクvs. voidを返すか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。