Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Proprietà Lazy<T>.IsValueCreated

 

Data di pubblicazione: ottobre 2016

Ottiene un valore che indica se è stato creato un valore per l'istanza di Lazy<T>.

Spazio dei nomi:   System
Assembly:  mscorlib (in mscorlib.dll)

public bool IsValueCreated { get; }

Valore proprietà

Type: System.Boolean

true se è stato creato un valore per l'istanza di Lazy<T>. In caso contrario, false.

Quando l'inizializzazione differita si verifica per un Lazy<T> istanza potrebbe restituire un valore che viene creato o viene generata un'eccezione. Se un'eccezione generato, i successivo comportamento di Lazy<T> istanza varia a seconda che la memorizzazione nella cache di eccezione attiva. Se il Lazy<T> istanza sia stata creata utilizzando un costruttore che non specifica una funzione di inizializzazione, quindi la memorizzazione nella cache di eccezione non è attiva. Un successivo tentativo di inizializzare il Lazy<T> potrebbe avere esito positivo e dopo l'inizializzazione ha esito positivo di IsValueCreated restituisce proprietà true. Se il Lazy<T> istanza è stata creata con una funzione di inizializzazione (specificato da di valueFactory parametro del Lazy<T> costruttore), quindi la memorizzazione nella cache di eccezione è controllata per la modalità thread safety.

  • Se la modalità è LazyThreadSafetyMode.ExecutionAndPublication o LazyThreadSafetyMode.None, non c'è alcuna possibilità di secondo per inizializzare il Lazy<T> istanza. Se si verifica un'eccezione non gestita nella funzione di inizializzazione, tale eccezione nella cache e generata di nuovo gli accessi successivi del Lazy<T>.Valueproprietà. Se viene generata un'eccezione, in tali casi, viene creato alcun valore IsValueCreated restituisce false.

  • Se la modalità è LazyThreadSafetyMode.PublicationOnly, il primo thread che riesce a eseguire la funzione di inizializzazione (o il costruttore predefinito) crea il valore per il Lazy<T> istanza. Se la funzione di inizializzazione genera un'eccezione in un unico thread, altri thread può ancora tentare di inizializzare il Lazy<T> istanza. Fino a quando il valore viene creato, il IsValueCreated restituisce proprietà false.

Universal Windows Platform
Disponibile da 8
.NET Framework
Disponibile da 4.0
Libreria di classi portabile
Supportato in: piattaforme .NET portabili
Silverlight
Disponibile da 4.0
Windows Phone Silverlight
Disponibile da 8.0
Windows Phone
Disponibile da 8.1
Torna all'inizio
Mostra: