AsyncLazy<T>.DisposeValueAsync Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Descarta o valor inicializado preguiçosamente, se descartável, e faz com que todas as tentativas subsequentes de obter o valor falhem.
public System.Threading.Tasks.Task DisposeValueAsync();
member this.DisposeValueAsync : unit -> System.Threading.Tasks.Task
Public Function DisposeValueAsync () As Task
Retornos
Uma tarefa que é concluída quando o valor foi descartado ou imediatamente se o valor já foi descartado ou foi agendado para descarte por uma chamada anterior.
Comentários
Chamar esse método colocará esse objeto em um estado descartado em que chamadas futuras para obter o valor serão geradas ObjectDisposedException.
Se o valor já tiver sido produzido e implementado IDisposable, IAsyncDisposableou IAsyncDisposable ele será descartado. Se a fábrica de valores já tiver sido iniciada, mas ainda não tiver sido concluída, seu valor será descartado quando a fábrica de valores for concluída.
Se chamadas anteriores para obter o valor estiverem em pré-lançamento quando esse método for chamado, essas chamadas poderão ser concluídas e seus chamadores poderão obter o valor, embora Dispose() possam ter sido ou em breve serão chamados no valor, levando esses usuários a experimentar um ObjectDisposedException.
Observe todas as condições com base no valor implementado IDisposable ou IAsyncDisposable se baseia no valor real, em vez do argumento de T tipo. Isso significa que, embora T possa ser IFoo (o que não implementa IDisposable), o tipo concreto que implementa IFoo pode implementar IDisposable e, portanto, ser tratado como um objeto descartável, conforme descrito acima.