ThreadPoolBoundHandle.AllocateNativeOverlapped 메서드

정의

NativeOverlapped 구조체에 관리되지 않는 포인터를 반환합니다.Returns an unmanaged pointer to a NativeOverlapped structure.

오버로드

AllocateNativeOverlapped(PreAllocatedOverlapped)

지정한 NativeOverlapped 개체와 연결된 콜백 상태 및 버퍼를 사용하여 PreAllocatedOverlapped 구조체에 대한 관리되지 않는 포인터를 반환합니다.Returns an unmanaged pointer to a NativeOverlapped structure using the callback state and buffers associated with the specified PreAllocatedOverlapped object.

AllocateNativeOverlapped(IOCompletionCallback, Object, Object)

비동기 I/O 작업이 완료되면 호출되는 대리자, 컨텍스트를 제공하는 사용자 제공 개체, 버퍼로 사용되는 관리되지 않는 개체를 지정하여 NativeOverlapped 구조체에 대한 관리되지 않는 포인터를 반환합니다.Returns an unmanaged pointer to a NativeOverlapped structure, specifying a delegate that is invoked when the asynchronous I/O operation is complete, a user-provided object that supplies context, and managed objects that serve as buffers.

AllocateNativeOverlapped(PreAllocatedOverlapped)

중요

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

지정한 NativeOverlapped 개체와 연결된 콜백 상태 및 버퍼를 사용하여 PreAllocatedOverlapped 구조체에 대한 관리되지 않는 포인터를 반환합니다.Returns an unmanaged pointer to a NativeOverlapped structure using the callback state and buffers associated with the specified PreAllocatedOverlapped object.

public:
 System::Threading::NativeOverlapped* AllocateNativeOverlapped(System::Threading::PreAllocatedOverlapped ^ preAllocated);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public System.Threading.NativeOverlapped* AllocateNativeOverlapped (System.Threading.PreAllocatedOverlapped preAllocated);
member this.AllocateNativeOverlapped : System.Threading.PreAllocatedOverlapped -> nativeptr<System.Threading.NativeOverlapped>

매개 변수

preAllocated
PreAllocatedOverlapped

NativeOverlapped 포인터를 생성하는 개체입니다.An object from which to create the NativeOverlapped pointer.

반환

NativeOverlapped 구조체에 대한 관리되지 않는 포인터입니다.An unmanaged pointer to a NativeOverlapped structure.

특성

예외

preAllocatednull인 경우preAllocated is null.

preAllocated는 다른 I/O 작업에 대해 현재 사용 중입니다.preAllocated is currently in use for another I/O operation.

이 메서드는 ThreadPoolBoundHandle이 삭제된 후 호출되었습니다.This method was called after the ThreadPoolBoundHandle was disposed.

-또는--or- 이 메서드는 preAllocated가 삭제된 후 호출되었습니다.This method was called after preAllocated was disposed.

설명

이 메서드가 반환 하는 관리 되지 않는 포인터는 중첩된 된 I/O 작업의 운영 체제를 전달할 수 있습니다.The unmanaged pointer returned by this method can be passed to the operating system in overlapped I/O operations. NativeOverlapped 구조체는 FreeNativeOverlapped 메서드가 호출 될 때까지 실제 메모리에서 수정 됩니다.The NativeOverlapped structure is fixed in physical memory until the FreeNativeOverlapped method is called.

추가 정보

AllocateNativeOverlapped(IOCompletionCallback, Object, Object)

중요

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

비동기 I/O 작업이 완료되면 호출되는 대리자, 컨텍스트를 제공하는 사용자 제공 개체, 버퍼로 사용되는 관리되지 않는 개체를 지정하여 NativeOverlapped 구조체에 대한 관리되지 않는 포인터를 반환합니다.Returns an unmanaged pointer to a NativeOverlapped structure, specifying a delegate that is invoked when the asynchronous I/O operation is complete, a user-provided object that supplies context, and managed objects that serve as buffers.

public:
 System::Threading::NativeOverlapped* AllocateNativeOverlapped(System::Threading::IOCompletionCallback ^ callback, System::Object ^ state, System::Object ^ pinData);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public System.Threading.NativeOverlapped* AllocateNativeOverlapped (System.Threading.IOCompletionCallback callback, object state, object pinData);
member this.AllocateNativeOverlapped : System.Threading.IOCompletionCallback * obj * obj -> nativeptr<System.Threading.NativeOverlapped>

매개 변수

callback
IOCompletionCallback

비동기 I/O 작업이 완료될 때 호출할 콜백 메서드를 나타내는 대리자입니다.A delegate that represents the callback method to invoke when the asynchronous I/O operation completes.

state
Object

NativeOverlapped 인스턴스를 다른 NativeOverlapped 인스턴스와 구별하는 사용자 제공 개체입니다.A user-provided object that distinguishes this NativeOverlapped instance from other NativeOverlapped instances.

pinData
Object

작업에 대한 입력 또는 출력 버퍼를 나타내는 개체의 배열 또는 개체입니다. 또는 null입니다.An object or array of objects that represent the input or output buffer for the operation, or null. 각 개체는 바이트 배열과 같은 버퍼를 나타냅니다.Each object represents a buffer, such an array of bytes.

반환

NativeOverlapped 구조체에 대한 관리되지 않는 포인터입니다.An unmanaged pointer to a NativeOverlapped structure.

특성

예외

callbacknull인 경우callback is null.

이 메서드는 ThreadPoolBoundHandle 개체가 삭제된 후 호출되었습니다.This method was called after the ThreadPoolBoundHandle object was disposed.

설명

이 메서드가 반환 하는 관리 되지 않는 포인터는 중첩된 된 I/O 작업의 운영 체제를 전달할 수 있습니다.The unmanaged pointer returned by this method can be passed to the operating system in overlapped I/O operations. NativeOverlapped 구조는 ThreadPoolBoundHandle.FreeNativeOverlapped가 호출 될 때까지 실제 메모리에서 수정 됩니다.The NativeOverlapped structure is fixed in physical memory until ThreadPoolBoundHandle.FreeNativeOverlapped is called.

참고

에 지정 된 버퍼는 i/o 작업을 수행 하는 동안 고정 됩니다.The buffers specified in are pinned for the duration of the I/O operation.

에 지정 된 버퍼는 비동기 i/o를 수행 하는 관리 되지 않는 운영 체제 함수에 전달 된 버퍼와 동일 해야 합니다.The buffer or buffers specified in must be the same as those passed to the unmanaged operating system function that performs the asynchronous I/O.

적용 대상