2

非同期メソッドがいつ開始されるかをフックして知るための非同期/待機メカニズムへの統合ポイントはありますか?

カスタム TaskScheduler はこのフックを提供できますか? カスタム SynchronizationContext?

特定のメソッド呼び出しを追跡し、それらがどのタスク (またはコード) に関連付けられているかを知りたいです。

ありがとう!

4

1 に答える 1

1

セクション「タスクステータス」のタスクベースの非同期パターンによると:

TAP メソッドから返されるすべてのタスクは「ホット」である必要があります [...] つまり、それらが表す非同期操作は既に開始されており、それらの TaskStatus は Created 以外の列挙値です。

つまり、Task作成するとすぐに を常に開始することになります (少なくとも、ファクトリ メソッドが TAP を実装している場合は、.Net フレームワークによって提供されるすべてのメソッドに当てはまります)。

を使用して「コールド」(実行されていない)Taskを作成して返す場合、メソッドが呼び出さnew Task()れたかどうかを確認する明確な方法はありません。プロパティは定期的Task.Start()にのみ確認できます。TaskStatus

于 2012-10-05T19:52:09.733 に答える