PreAllocatedOverlapped.UnsafeCreate 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
중요
이 API는 CLS 규격이 아닙니다.
각 비동기 I/O 작업이 완료될 때 호출되는 대리자, 컨텍스트를 제공하는 사용자 제공 개체 및 버퍼 역할을 하는 관리되는 개체를 지정하여 클래스의 PreAllocatedOverlapped 새 인스턴스를 초기화합니다.
public:
static System::Threading::PreAllocatedOverlapped ^ UnsafeCreate(System::Threading::IOCompletionCallback ^ callback, System::Object ^ state, System::Object ^ pinData);
[System.CLSCompliant(false)]
public static System.Threading.PreAllocatedOverlapped UnsafeCreate (System.Threading.IOCompletionCallback callback, object? state, object? pinData);
[<System.CLSCompliant(false)>]
static member UnsafeCreate : System.Threading.IOCompletionCallback * obj * obj -> System.Threading.PreAllocatedOverlapped
Public Shared Function UnsafeCreate (callback As IOCompletionCallback, state As Object, pinData As Object) As PreAllocatedOverlapped
매개 변수
- callback
- IOCompletionCallback
IOCompletionCallback 각 비동기 I/O 작업이 완료될 때 호출되는 콜백 메서드를 나타내는 대리자입니다.
- state
- Object
이 개체와 생성된 인스턴스를 다른 NativeOverlapped 인스턴스와 구분하는 NativeOverlapped 사용자 제공 개체입니다. null
일 수 있습니다.
- pinData
- Object
작업에 대한 입력 또는 출력 버퍼를 나타내는 개체 또는 개체 배열입니다. 각 개체는 버퍼(예: 바이트 배열)를 나타냅니다. null
일 수 있습니다.
반환
새 PreAllocatedOverlapped 인스턴스입니다.
- 특성
예외
callback
이(가) null
인 경우
이 메서드는 ThreadPoolBoundHandle이 삭제된 후 호출되었습니다.
설명
새 PreAllocatedOverlapped 인스턴스를 전달하여 AllocateNativeOverlapped(PreAllocatedOverlapped)겹치는 I/O 작업에서 운영 체제에 전달할 수 있는 인스턴스를 생성 NativeOverlapped 할 수 있습니다. 단일 인스턴스는 한 PreAllocatedOverlapped 번에 단일 네이티브 I/O 작업에만 사용할 수 있습니다. 그러나 인스턴스에 PreAllocatedOverlapped 저장된 상태는 후속 네이티브 작업에 다시 사용할 수 있습니다. ExecutionContext는 콜백 호출로 전달되지 않습니다.
참고
지정된 pinData
버퍼는 호출될 때까지 Dispose() 고정됩니다.