Task.Dispose 方法

定義

釋放 Task 類別目前的執行個體所使用的全部資源。

多載

Dispose(Boolean)

處置 Task,並釋放它的所有 Unmanaged 資源。

Dispose()

釋放 Task 類別目前的執行個體所使用的全部資源。

Dispose(Boolean)

來源:
Task.cs
來源:
Task.cs
來源:
Task.cs

處置 Task,並釋放它的所有 Unmanaged 資源。

protected virtual void Dispose (bool disposing);

參數

disposing
Boolean

布林值,表示是否會因為呼叫 Dispose() 而呼叫這個方法。

例外狀況

工作不是下列其中一個最終狀態:RanToCompletionFaultedCanceled

備註

類別 Task 會實作 IDisposable 介面,因為它會在內部使用同時實 IDisposable作的資源。 不過,特別是如果您的應用程式以 .NET Framework 4.5 或更新版本為目標,Dispose除非效能或延展性測試指出根據您的使用模式,您的應用程式效能會透過處置工作來改善。 如需詳細資訊,請參閱使用 .NET 的平行程序設計部落格中的 是否需要處置工作?

執行緒安全性

不同於類別的大部分 Task 成員,這個方法不是安全線程。

適用於

.NET 9 及其他版本
產品 版本
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 4.0, 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 2.0, 2.1

Dispose()

來源:
Task.cs
來源:
Task.cs
來源:
Task.cs

釋放 Task 類別目前的執行個體所使用的全部資源。

public void Dispose ();

實作

例外狀況

工作不是下列其中一個最終狀態:RanToCompletionFaultedCanceled

備註

類別 Task 會實作 IDisposable 介面,因為它會在內部使用同時實 IDisposable作的資源。 不過,特別是如果您的應用程式以 .NET Framework 4.5 或更新版本為目標,Dispose除非效能或延展性測試指出根據您的使用模式,您的應用程式效能會透過處置工作來改善。 如需詳細資訊,請參閱使用 .NET 的平行程序設計部落格中的 是否需要處置工作?

適用於

.NET 9 及其他版本
產品 版本
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 4.0, 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 2.0, 2.1