Partilhar via


AsyncLazy<T>.DisposeValueAsync Método

Definição

Descarta o valor inicializado lentamente se for 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 gerarão ObjectDisposedException.

Se o valor já tiver sido produzido e implementar 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 andamento 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 serão chamados em breve no valor , levando esses usuários a experimentar um ObjectDisposedException.

Observe que todas as condições com base no valor que implementa IDisposable ou IAsyncDisposable se baseiam no valor real, em vez do argumento de T tipo. Isso significa que, embora T possa ser IFoo (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.

Aplica-se a