はい、そうです。サーバーがI / Oの完了を待機している間に他のリクエストを処理できるようにするためです。つまり、同じ数のスレッドがより多くのリクエストを処理できるようになります。
また、.Result
を使用して同期を強制します または.Wait()
デッドロックに遭遇する
ので危険です 正しく行わないと。
非同期とは、サーバーがその間の何かにスレッドを使用できることを意味します。これはほとんど透過的です。つまり、コードはそれほど気にする必要はありません。実用的な目的のために、単にawait InsertOneAsync(...)
を呼び出します または、呼び出しているMongoDBドライバーメソッド。
非同期はかなり「感染性のある」機能です。非同期機能を効率的に使用するには、すべてのコードがそれを処理できる必要があります。