禁用同步上下文
要禁用同步上下文,你應該呼叫 ConfigureAwait
方法:
async Task() Foo()
{
await Task.Run(() => Console.WriteLine("Test"));
}
. . .
Foo().ConfigureAwait(false);
ConfigureAwait 提供了一種避免預設 SynchronizationContext 捕獲行為的方法; 為 flowContext 引數傳遞 false 可防止在 await 之後使用 SynchronizationContext 繼續執行。