Langue

AsyncLazy<T>.DisposeValue Méthode

Définition

Supprime la valeur initialisée de manière différée si jetable et provoque l’échec de toutes les tentatives suivantes d’obtention de la valeur.

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

Remarques

Cet appel bloque l’élimination (qui peut inclure la construction de la valeur elle-même s’il a déjà démarré mais pas encore terminé) s’il s’agit du premier appel à supprimer la valeur.

L’appel de cette méthode place cet objet dans un état supprimé où les appels futurs pour obtenir la valeur lèveront ObjectDisposedException.

Si la valeur a déjà été produite et implémentée IDisposable ou IAsyncDisposablequ’elle sera supprimée. Si la fabrique de valeurs a déjà démarré mais n’est pas encore terminée, sa valeur est supprimée lorsque la fabrique de valeurs est terminée.

Si les appels antérieurs à l’obtention de la valeur sont en cours d’appel lorsque cette méthode est appelée, ces appels peuvent se terminer et leurs appelants peuvent obtenir la valeur, bien qu’ils Dispose() aient été ou seront bientôt appelés sur la valeur, ce qui entraîne l’expérience d’un ObjectDisposedExceptionutilisateur.

Notez toutes les conditions en fonction de la valeur qui implémente IDisposable ou IAsyncDisposable est basée sur la valeur réelle, plutôt que sur l’argument de T type. Cela signifie que bien que bien que ( TIFoo qui n’implémente IDisposablepas ), le type concret qui implémente IFoo peut implémenter IDisposable et donc être traité comme un objet jetable comme décrit ci-dessus.

S’applique à