Sdílet prostřednictvím


DbDataReader.DisposeAsync Metoda

Definice

Asynchronně uvolní všechny prostředky používané aktuální instancí DbDataReader třídy.

public:
 virtual System::Threading::Tasks::ValueTask DisposeAsync();
public virtual System.Threading.Tasks.ValueTask DisposeAsync ();
abstract member DisposeAsync : unit -> System.Threading.Tasks.ValueTask
override this.DisposeAsync : unit -> System.Threading.Tasks.ValueTask
Public Overridable Function DisposeAsync () As ValueTask

Návraty

A ValueTask představující asynchronní operaci.

Implementuje

Poznámky

Zavolejte Dispose nebo DisposeAsync po dokončení používání DbDataReadernástroje . Volání jedné z těchto metod ponechá DbDataReader objekt v nepoužitelném stavu. Po odstranění musíte uvolnit všechny odkazy na DbDataReader objekt, aby systém uvolňování paměti mohl uvolnit paměť, kterou DbDataReader zabírala.

Další informace najdete v tématech Čištění nespravovaných prostředků a Implementace metody Dispose.

Poznámka

Před uvolněním posledního odkazu na DbDataReader. Jinak prostředky, které používá, nebudou uvolněny, dokud systém uvolňování paměti nezavolá metodu objektu DbDataReaderFinalize .

Výchozí implementace této asynchronní metody deleguje na svůj synchronní protějšek a vrátí dokončený ValueTask, potenciálně blokuje volající vlákno.

Zprostředkovatelé dat, kteří podporují asynchronní programování , by měli přepsat výchozí implementaci pomocí asynchronních vstupně-výstupních operací.

Tato metoda ukládá do úlohy, která vrací všechny výjimky nesouvisejí s používáním, které může vyvolat synchronní protějšek metody. Pokud je ve vrácené úloze uložena výjimka, bude tato výjimka vyvolána při čekání na úkol. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. Informace o uložených výjimkách najdete v tématu Výjimky vyvolané nástrojem Dispose().

Platí pro