あえとす
@aetos382
ConfigureAwait(true) はスレッドスイッチを抑制しない。ワーカースレッド内で ConfigureAwait(true) をしても、拾える同期コンテキストはないけど、スレッドスイッチは発生し得る。ので、不必要なパフォーマンス劣化をもたらす可能性がある。
2015-05-01 11:37:08
あえとす
@aetos382
ConfigureAwait(true) は、後続処理を同期コンテキストで走らせる。ただし、同期コンテキストがない場合の既定の挙動が、スレッドプール上で実行するってことなんだろう。なので、同じスレッドで動く場合もあるし、違うスレッドで動く場合もある。
2015-05-01 11:41:26
あえとす
@aetos382
SynchronizationContext は抽象クラスじゃない。Post の既定の実装は QueueUserWorkItem になってる。null の場合は新しい SyncContext を new して Post するのかもしれない。
2015-05-01 11:44:00
どちらともいえない
@azyobuzin
はてなブログに投稿しました #はてなブログ やはり ConfigureAwait のデフォルトはまちがっている。 - アジョブジ星通信 azyobuzin.hatenablog.com/entry/2015/05/…
2015-05-01 19:00:36