AsyncLazy<T>.DisposeValue 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
如果可處置,則會處置延遲初始化的值,並導致所有後續嘗試取得值失敗。
public void DisposeValue ();
member this.DisposeValue : unit -> unit
Public Sub DisposeValue ()
備註
如果值已經啟動但尚未完成,則此呼叫將會封鎖處置 (,這可能包括建構值本身,但尚未完成) 如果是處置值的第一次呼叫。
呼叫這個方法會將這個物件放入已處置的狀態,而未來要取得值的呼叫將會擲回 ObjectDisposedException。
如果值已經產生並實作 IDisposable 或 IAsyncDisposable,則會加以處置。 如果值處理站已經啟動但尚未完成,則當值處理站完成時,將會處置其值。
如果在呼叫這個方法時取得值的先前呼叫正在正式執行中,這些呼叫 可能會 完成,而且其呼叫端可能會取得值,不過 Dispose() 可能已經或即將在值上呼叫,導致這些使用者遇到 ObjectDisposedException。
請記下實作IDisposableIAsyncDisposable值或以實際值為基礎的所有條件,而不是T
類型自變數。 這表示雖然T
可以是未實IDisposable作) 的 (,但實IFoo
作的具體型別可能會實IDisposable作,因此會被視為可處置IFoo
的物件,如上所述。