Partager via


AsyncLazy<T>.DisposeValueAsync Méthode

Définition

Supprime la valeur initialisée tardivement si elle est disponible et provoque l’échec de toutes les tentatives suivantes d’obtention de la valeur.

public System.Threading.Tasks.Task DisposeValueAsync ();
member this.DisposeValueAsync : unit -> System.Threading.Tasks.Task
Public Function DisposeValueAsync () As Task

Retours

Tâche qui se termine lorsque la valeur a été supprimée, ou immédiatement si la valeur a déjà été supprimée ou a été planifiée pour la suppression par un appel antérieur.

Remarques

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émente IDisposable, IAsyncDisposableou IAsyncDisposable 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 pour obtenir la valeur sont en cours d’exécution 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 amène ces utilisateurs à rencontrer un ObjectDisposedException.

Notez toutes les conditions basées sur la valeur qui implémente IDisposable ou IAsyncDisposable est basé sur la valeur réelle, plutôt que sur l’argument de T type. Cela signifie que bien que peut T être IFoo (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 à