DbDataReader.DisposeAsync メソッド

定義

DbDataReader クラスの現在のインスタンスで使用されているすべてのリソースを非同期的に解放します。

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

返品

非同期操作を表す ValueTask

実装

注釈

DbDataReaderの使用が完了したら、DisposeまたはDisposeAsyncを呼び出します。 これらのメソッドのいずれかを呼び出すと、 DbDataReader は使用できない状態になります。 破棄した後、DbDataReaderが占有していたメモリをガベージ コレクターが再利用できるように、DbDataReaderへのすべての参照を解放する必要があります。

詳細については、「 アンマネージ リソースのクリーンアップDispose メソッドの実装」を参照してください。

Note

DbDataReaderへの最後の参照を解放する前に、必ず破棄してください。 それ以外の場合、ガベージ コレクターが DbDataReader オブジェクトの Finalize メソッドを呼び出すまで、使用しているリソースは解放されません。

この非同期メソッドの既定の実装は、対応する同期メソッドにデリゲートし、完了した ValueTaskを返し、呼び出し元のスレッドをブロックする可能性があります。

非同期プログラミングをサポートするデータ プロバイダーは、非同期 I/O 操作を使用して既定の実装をオーバーライドする必要があります。

このメソッドは、メソッドの同期的な例外がスローできるすべての非使用例外を返すタスクに格納します。 返されたタスクに例外が格納されている場合、その例外はタスクが待機しているときにスローされます。 ArgumentException などの使用に関する例外は、引き続き同期的にスローされます。 格納されている例外については、 Dispose()によってスローされる例外を参照してください。

適用対象