ThreadPoolBoundHandle.AllocateNativeOverlapped Метод

Определение

Возвращает неуправляемый указатель на структуру NativeOverlapped.

Перегрузки

AllocateNativeOverlapped(PreAllocatedOverlapped)

Возвращает неуправляемый указатель на структуру NativeOverlapped с помощью состояния обратного вызова и буферов, связанных с указанным объектом PreAllocatedOverlapped.

AllocateNativeOverlapped(IOCompletionCallback, Object, Object)

Возвращает неуправляемый указатель на структуру NativeOverlapped, обозначая делегат, вызываемый после завершения асинхронной операции ввода-вывода, предоставляемый пользователем объект, предоставляющий контекст, и управляемые объекты, которые служат в качестве буфера.

AllocateNativeOverlapped(PreAllocatedOverlapped)

Важно!

Этот API несовместим с CLS.

Возвращает неуправляемый указатель на структуру NativeOverlapped с помощью состояния обратного вызова и буферов, связанных с указанным объектом PreAllocatedOverlapped.

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

Параметры

preAllocated
PreAllocatedOverlapped

Объект, из которого создается указатель NativeOverlapped.

Возвращаемое значение

NativeOverlapped*

Неуправляемый указатель на структуру NativeOverlapped.

Атрибуты

Исключения

preAllocated имеет значение null.

preAllocated сейчас используется для другой операции ввода-вывода.

Этот метод был вызван после удаления ThreadPoolBoundHandle.

-или- Этот метод был вызван после удаления preAllocated.

Комментарии

Неуправляемый указатель, возвращаемый этим методом, можно передать операционной системе в перекрывающихся операциях ввода-вывода. Структура NativeOverlapped фиксируется в физической памяти до FreeNativeOverlapped вызова метода.

См. также раздел

Применяется к

AllocateNativeOverlapped(IOCompletionCallback, Object, Object)

Важно!

Этот API несовместим с CLS.

Возвращает неуправляемый указатель на структуру NativeOverlapped, обозначая делегат, вызываемый после завершения асинхронной операции ввода-вывода, предоставляемый пользователем объект, предоставляющий контекст, и управляемые объекты, которые служат в качестве буфера.

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

Параметры

callback
IOCompletionCallback

Делегат, который представляет метод обратного вызова, вызываемый после завершения асинхронной операции ввода-вывода.

state
Object

Предоставляемый пользователем объект, отличающий этот экземпляр NativeOverlapped от других экземпляров NativeOverlapped.

pinData
Object

Объект или массив объектов, представляющих входной или выходной буфер для операции, или null. Каждый объект представляет буфер, такой массив байтов.

Возвращаемое значение

NativeOverlapped*

Неуправляемый указатель на структуру NativeOverlapped.

Атрибуты

Исключения

callback имеет значение null.

Этот метод был вызван после удаления объекта ThreadPoolBoundHandle.

Комментарии

Неуправляемый указатель, возвращаемый этим методом, можно передать операционной системе в перекрывающихся операциях ввода-вывода. Структура NativeOverlapped фиксируется в физической памяти до тех пор, пока ThreadPoolBoundHandle.FreeNativeOverlapped не будет вызвана.

Примечание

Буферы, указанные в pinData , закрепляются в течение операции ввода-вывода.

Буфер или буферы, указанные в pinData , должны совпадать с теми, которые передаются в неуправляемую функцию операционной системы, которая выполняет асинхронный ввод-вывод.

Применяется к