共用方式為


AsyncLazy<T>.DisposeValueAsync 方法

定義

如果可處置,則會處置延遲初始化的值,並導致所有後續嘗試取得值失敗。

public System.Threading.Tasks.Task DisposeValueAsync ();
member this.DisposeValueAsync : unit -> System.Threading.Tasks.Task
Public Function DisposeValueAsync () As Task

傳回

當值已處置時完成的工作,或如果值已經處置或已排程由先前呼叫處置,則立即完成的工作。

備註

呼叫這個方法會將這個物件放入已處置的狀態,而未來取得值的呼叫將會擲 ObjectDisposedException回 。

如果已經產生並實作 IDisposable、, IAsyncDisposableIAsyncDisposable 將會處置該值。 如果值處理站已經啟動但尚未完成,當值處理站完成時,將會處置其值。

如果呼叫這個方法時,取得值的先前呼叫會處於正式執行狀態,這些呼叫 可能會 完成,而且其呼叫端可能會取得值,雖然 Dispose() 可能已經或即將在值上呼叫,但會導致這些用戶體驗 ObjectDisposedException

請記下實作IDisposableIAsyncDisposable或根據實際值的所有條件,而不是T類型自變數。 這表示雖然 T 可能 (IFoo 未實 IDisposable 作) ,但實 IFoo 作的具體類型可能會實 IDisposable 作,因此會被視為可處置的物件,如上所述。

適用於