다음을 통해 공유


PreAllocatedOverlapped(IOCompletionCallback, Object, Object) 생성자

정의

중요

이 API는 CLS 규격이 아닙니다.

PreAllocatedOverlapped 클래스의 새 인스턴스를 초기화하고 각 비동기 I/O 작업이 완료될 때 호출할 대리자, 컨텍스트를 제공하는 사용자 제공 개체, 버퍼로 사용되는 관리되는 개체를 지정합니다.

public:
 PreAllocatedOverlapped(System::Threading::IOCompletionCallback ^ callback, System::Object ^ state, System::Object ^ pinData);
[System.CLSCompliant(false)]
public PreAllocatedOverlapped (System.Threading.IOCompletionCallback callback, object state, object pinData);
[System.CLSCompliant(false)]
public PreAllocatedOverlapped (System.Threading.IOCompletionCallback callback, object? state, object? pinData);
[<System.CLSCompliant(false)>]
new System.Threading.PreAllocatedOverlapped : System.Threading.IOCompletionCallback * obj * obj -> System.Threading.PreAllocatedOverlapped
Public Sub New (callback As IOCompletionCallback, state As Object, pinData As Object)

매개 변수

callback
IOCompletionCallback

각 비동기 I/O 작업이 완료될 때 호출할 콜백 메서드를 나타내는 대리자입니다.

state
Object

이 개체에서 생성된 NativeOverlapped 인스턴스와 다른 NativeOverlapped 인스턴스를 구별하는 사용자 제공 개체입니다. 이 값은 null일 수 있습니다.

pinData
Object

작업에 대한 입력 또는 출력 버퍼를 나타내는 개체의 배열 또는 개체입니다. 각 개체는 바이트 배열과 같은 버퍼를 나타냅니다. 이 값은 null일 수 있습니다.

특성

예외

callback이(가) null인 경우

이 메서드는 ThreadPoolBoundHandle이 삭제된 후 호출되었습니다.

설명

PreAllocatedOverlapped 인스턴스를 메서드에 전달하여 AllocateNativeOverlapped 겹치는 I/O 작업에서 운영 체제에 전달할 수 있는 인스턴스를 생성 NativeOverlapped 할 수 있습니다. 단일 인스턴스는 한 PreAllocatedOverlapped 번에 단일 네이티브 I/O 작업에만 사용할 수 있습니다. 그러나 인스턴스에 PreAllocatedOverlapped 저장된 상태는 후속 네이티브 작업에 다시 사용할 수 있습니다.

참고

지정된 pinData 버퍼는 메서드가 호출될 때까지 Dispose 고정됩니다.

적용 대상