非同期方法:
直接の比較 - return await
? Task<T>
await
非同期プログラミングでは、非同期方式を使用して
オブジェクトの一般的な方法に直接戻すことができます。これらの2つの方法はほとんどの場合、特定のシナリオでは、Task<T>
非同期方法の使用が必要です。 return await
Task<T>
重要な違いは、return await
ステートメントを使用して
using
最初のメソッドでは、try
オブジェクトは
<code class="language-csharp">Task<someresult> DoSomethingAsync() { using (var foo = new Foo()) { return foo.DoAnotherThingAsync(); } } async Task<someresult> DoSomethingAsync() { using (var foo = new Foo()) { return await foo.DoAnotherThingAsync(); } }</code>
それどころか、Foo
を使用する2番目の方法は、DoAnotherThingAsync()
オブジェクトがタスクを完了した後にのみリリースされることを保証します。これは、予想される動作を提供します。 DoAnotherThingAsync()
したがって、Foo
正しいリリースを確保するか、非同期操作で特定のリソースを管理する必要がある場合は、
の非同期メソッドを使用する必要があります。 await
以上が非同期メソッド: `return waing` vs.直接「タスク」 - 「待つ」が必要なのはいつですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。