WebJobsSDKでWindows Azureを使用していますが、同期メソッドを呼び出すときに、待っている呼び出しにConfigureAwait(false)を追加する必要があるのでしょうか。言い換えれば、SDKは、正常に機能し続けるために元のコンテキストに戻るために非同期メソッドを必要としますか?Azure WebJobsSDKのトップレベルの呼び出しでConfigureAwait(false)を使用する必要があります
1
A
答えて
2
SDKは正しく機能し続けるために元のコンテキストに戻るにはasyncメソッドが必要ですか?
私はこの質問に対する答えは分かりません。それはかもしれないはホストに依存します。つまり、SDK自体は特定のコンテキストを必要としませんが、ホストは可能性があります。
しかし、それは問題ではないと思います。この質問を考慮:
私はAzureのWebJobsSDKコンテキストが必要な場合
のトップレベルのコールに(偽)ConfigureAwaitを使用すべきことは、その後、ホストは、コンテキストを提供します、そして、あなたはいけませんConfigureAwait(false)
を使用してください。
コンテキストがない場合、ホストはコンテキストを提供せず、ConfigureAwait(false)
を使用するかどうかは関係ありません。
コンテキストが提供されていても必須ではない場合は、ConfigureAwait(false)
を使用すると、ごくわずかな量でオーバーヘッドを減らすことができます。
したがって、コンテキストをキャプチャする(つまり、ConfigureAwait(false)
を使用しない)ことは、どのホストでも最も安全なソリューションだと思います。
関連する問題
- 1. HttpMessageHandlerでConfigureAwait(false)を使用する必要があります
- 2. Task.Runアクション内のTask.DelayにConfigureAwait(false)を使用する必要がありますか?私のWPF MVVMアプリで
- 3. セッションキーを使用してIframeダイアログを呼び出す必要があります
- 4. コードビハインドファイルでValidate()を呼び出す必要がありますか?
- 5. PhoneStateListenerでアクティビティを呼び出す必要があります
- 6. onDestroy()でthread.joinを呼び出す必要があります
- 7. ARCでdispatch_releaseを呼び出す必要がありますか?
- 8. UITableViewCellでdeinitを呼び出す必要がありますか?
- 9. リポジトリは別のリポジトリを呼び出す必要がありますか?あるいは、リポジトリがサービス層を呼び出す必要がありますか?
- 10. bindService()はfalseを返しますが、unbindService()を呼び出す必要がありますか?
- 11. 呼び出し元のスレッドはSTAである必要があります
- 12. 使用後にBitmap.recycle()を呼び出す必要がありますか?
- 13. TForm.ManualDockはonFormShowを呼び出す必要がありますか?
- 14. Graphics.Dispose()を呼び出す必要がありますか?
- 15. いつjava.sql.Connection.rollback()を呼び出す必要がありますか?
- 16. [convertToGl]を呼び出す必要がありますか?
- 17. なぜresolve()を呼び出す必要がありますか?
- 18. いつsetContentAspectRatioを呼び出す必要がありますか?
- 19. GLSurfaceView:onPause/onResumeを呼び出す必要がありますか?
- 20. SqlTransactionはDisposeを呼び出す必要がありますか?
- 21. クローズ接続を呼び出す必要がありますか?
- 22. いつMessageQueue.EndReceive()を呼び出す必要がありますか?
- 23. Pythonエラー "unboundメソッドを呼び出す必要があります"?
- 24. 毎回FacebookSdk.sdkInitialize()を呼び出す必要がありますか?
- 25. ConfigureAwait(false)でもWebAPIデッドロックで非同期メソッドを同期呼び出す
- 26. タスクベースのWCF呼び出しをOneWayにする必要がありますか?
- 27. stdコンストラクタの呼び出しを修飾する必要がありますか?
- 28. realm.close()はいつ呼び出す必要がありますか?
- 29. このメソッドを呼び出す前に、クライアントでenableActiveRecord()を呼び出す必要があります
- 30. 各アクティビティでMobileServiceSyncContext.initializeを呼び出す必要がありますか?