Task.ConfigureAwait 方法
本文內容
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
ConfigureAwait(Boolean) |
設定用來等候這個 Task 的 awaiter。 |
ConfigureAwait(ConfigureAwaitOptions) |
設定用來等候這個 Task 的 awaiter。 |
- 來源:
- Task.cs
- 來源:
- Task.cs
- 來源:
- Task.cs
設定用來等候這個 Task 的 awaiter。
public:
System::Runtime::CompilerServices::ConfiguredTaskAwaitable ConfigureAwait(bool continueOnCapturedContext);
C#
public System.Runtime.CompilerServices.ConfiguredTaskAwaitable ConfigureAwait(bool continueOnCapturedContext);
member this.ConfigureAwait : bool -> System.Runtime.CompilerServices.ConfiguredTaskAwaitable
Public Function ConfigureAwait (continueOnCapturedContext As Boolean) As ConfiguredTaskAwaitable
參數
- continueOnCapturedContext
- Boolean
true
表示嘗試將接續封送處理回原始擷取的內容,否則為 false
。
傳回
等候這項工作所用的物件。
備註
當非同步方法在直接等候 Task 時,接續通常會發生在建立工作的相同執行緒中,不過需視非同步的內容而定。 就效能的面向而言,此行為的成本可能很高,且可能會導致在使用者介面執行緒上產生死結。 若要避免這些問題,請呼叫 Task.ConfigureAwait(false)
。 如需詳細資訊,請參閱 ConfigureAwait 常見問題。
另請參閱
適用於
.NET 10 及其他版本
產品 | 版本 |
---|---|
.NET | Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10 |
.NET Framework | 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1 |
UWP | 10.0 |
- 來源:
- Task.cs
- 來源:
- Task.cs
設定用來等候這個 Task 的 awaiter。
public:
System::Runtime::CompilerServices::ConfiguredTaskAwaitable ConfigureAwait(System::Threading::Tasks::ConfigureAwaitOptions options);
C#
public System.Runtime.CompilerServices.ConfiguredTaskAwaitable ConfigureAwait(System.Threading.Tasks.ConfigureAwaitOptions options);
member this.ConfigureAwait : System.Threading.Tasks.ConfigureAwaitOptions -> System.Runtime.CompilerServices.ConfiguredTaskAwaitable
Public Function ConfigureAwait (options As ConfigureAwaitOptions) As ConfiguredTaskAwaitable
參數
- options
- ConfigureAwaitOptions
用來設定此工作等候執行方式的選項。
傳回
等候這項工作所用的物件。
例外狀況
options
引數指定了無效的值。
適用於
.NET 10 及其他版本
產品 | 版本 |
---|---|
.NET | 8, 9, 10 |