Compartir a través de


AsyncLazy<T>.DisposeValueAsync Método

Definición

Elimina el valor inicializado diferente si es descartable y hace que todos los intentos posteriores de obtener el valor produzcan un error.

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

Devoluciones

Tarea que se completa cuando el valor se ha eliminado o inmediatamente si el valor ya se ha eliminado o se ha programado para su eliminación mediante una llamada anterior.

Comentarios

Al llamar a este método, este objeto se colocará en un estado eliminado en el que futuras llamadas para obtener el valor producirán ObjectDisposedException.

Si el valor ya se ha generado e implementa IDisposable, IAsyncDisposableo IAsyncDisposable se eliminará. Si el generador de valores ya se ha iniciado pero aún no se ha completado, su valor se eliminará cuando se complete la factoría de valores.

Si las llamadas anteriores para obtener el valor están en curso cuando se llama a este método, esas llamadas pueden completarse y sus autores de llamadas pueden obtener el valor, aunque Dispose() puede haber sido o pronto se llamará en el valor, lo que hace que esos usuarios experimenten un ObjectDisposedException.

Tenga en cuenta todas las condiciones basadas en el valor que implementa IDisposable o IAsyncDisposable se basa en el valor real, en lugar del T argumento type. Esto significa que, aunque T puede ser IFoo (que no implementa IDisposable), el tipo concreto que implementa IFoo puede implementar IDisposable y, por tanto, ser tratado como un objeto descartable como se ha descrito anteriormente.

Se aplica a