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 비동기 작업을 나타내는 값입니다.

구현

설명

호출 Dispose 또는 DisposeAsync 사용을 완료한 DbDataReader경우 . 이러한 메서드 중 하나를 호출하면 DbDataReader 사용할 수 없는 상태가 남습니다. 삭제한 후에는 가비지 수집기가 차지하고 있던 메모리 DbDataReader 를 회수할 DbDataReader 수 있도록 모든 참조를 해제해야 합니다.

자세한 내용은 관리되지 않는 리소스 정리Dispose 메서드 구현을 참조하세요.

Note

에 대한 마지막 참조 DbDataReader를 해제하기 전에 항상 삭제합니다. 그렇지 않으면 가비지 수집기가 개체의 DbDataReader 메서드를 호출할 때까지 사용 중인 리소스가 Finalize 해제되지 않습니다.

이 비동기 메서드의 기본 구현은 동기 메서드에 위임되고 완료된 ValueTask것을 반환하여 호출 스레드를 차단할 수 있습니다.

비동기 프로그래밍을 지원하는 데이터 공급자는 비동기 I/O 작업을 사용하여 기본 구현을 재정의해야 합니다.

이 메서드는 메서드의 동기 대응이 throw할 수 있는 모든 비사용 예외를 반환하는 작업에 저장됩니다. 예외가 반환된 작업에 저장되면 태스크가 대기될 때 해당 예외가 throw됩니다. ArgumentException같은 사용 예외는 여전히 동기적으로 던져집니다. 저장된 예외는 .에 의해 Dispose()throw된 예외를 참조하세요.

적용 대상