語言

AsyncLazy<T> 類別

定義

一個執行緒安全、懶散且非同步評估的價值工廠。

generic <typename T>
public ref class AsyncLazy
template <typename T>
[Windows::Foundation::Metadata::WebHostHidden]
class AsyncLazy
public class AsyncLazy<T>
type AsyncLazy<'T> = class
Public Class AsyncLazy(Of T)

類型參數

T

價值工廠所產生的價值類型。

繼承
AsyncLazy<T>

備註

此類別本身不攜帶任何需要處置的資源。 但價值工廠可能會產生需要捨棄的值,因此此類別攜帶方法 DisposeValueAsync() 卻不實作 IDisposable。

建構函式

名稱 Description
AsyncLazy<T>(Func<Task<T>>, JoinableTaskFactory)

初始化 AsyncLazy<T> 類別的新執行個體。

屬性

名稱 Description
IsValueCreated

會獲得一個值,表示價值工廠是否已被調用。

IsValueDisposed

會得到一個值,表示是否 DisposeValue() 已被叫用。

IsValueFactoryCompleted

會獲得一個值,表示該價值工廠是否已被調用並已完成。

SuppressRecursiveFactoryDetection

會根據自身情況獲得一個值,指示是否要抑制對某個價值工廠的偵測。

方法

名稱 Description
DisposeValue()

若是一次性,會丟棄懶惰初始化的值,並導致所有後續嘗試取得該值的嘗試都失敗。

DisposeValueAsync()

若是一次性,會丟棄懶惰初始化的值,並導致所有後續嘗試取得該值的嘗試都失敗。

GetValue()

得到懶散計算的值。

GetValue(CancellationToken)

得到懶散計算的值。

GetValueAsync()

負責產生或已經產生價值的任務。

GetValueAsync(CancellationToken)

負責產生或已經產生價值的任務。

SuppressRelevance()

標記後續代碼與接收 AsyncLazy<T> 價值工廠無關。

ToString()

會渲染描述未產生值的字串,或該已建立值的字串表示。

適用於

執行緒安全性

此類型對所有成員皆為執行緒安全。