共用方式為


AsyncLazy<T>.DisposeValue 方法

定義

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

public void DisposeValue ();
member this.DisposeValue : unit -> unit
Public Sub DisposeValue ()

備註

如果值已經啟動但尚未完成,則此呼叫將會封鎖處置 (,這可能包括建構值本身,但尚未完成) 如果是處置值的第一次呼叫。

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

如果值已經產生並實作 IDisposableIAsyncDisposable,則會加以處置。 如果值處理站已經啟動但尚未完成,則當值處理站完成時,將會處置其值。

如果在呼叫這個方法時取得值的先前呼叫正在正式執行中,這些呼叫 可能會 完成,而且其呼叫端可能會取得值,不過 Dispose() 可能已經或即將在值上呼叫,導致這些使用者遇到 ObjectDisposedException

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

適用於