ThreadPoolBoundHandle.AllocateNativeOverlapped Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает неуправляемый указатель на структуру NativeOverlapped .
Перегрузки
| Имя | Описание |
|---|---|
| AllocateNativeOverlapped(PreAllocatedOverlapped) |
Возвращает неуправляемый NativeOverlapped указатель на структуру с помощью состояния обратного вызова и буферов, связанных с указанным PreAllocatedOverlapped объектом. |
| AllocateNativeOverlapped(IOCompletionCallback, Object, Object) |
Возвращает неуправляемый указатель на NativeOverlapped структуру, указывая делегат, вызываемый при завершении асинхронной операции ввода-вывода, предоставленный пользователем объект, предоставляющий контекст и управляемые объекты, которые служат буферами. |
AllocateNativeOverlapped(PreAllocatedOverlapped)
- Исходный код:
- ThreadPoolBoundHandle.Unix.cs
- Исходный код:
- ThreadPoolBoundHandle.PlatformNotSupported.cs
- Исходный код:
- ThreadPoolBoundHandle.cs
- Исходный код:
- ThreadPoolBoundHandle.Unix.cs
- Исходный код:
- ThreadPoolBoundHandle.Unix.cs
Важно!
Этот 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 .
- Атрибуты
Исключения
preAllocated равно null.
preAllocated в настоящее время используется для другой операции ввода-вывода.
Этот метод был вызван после ThreadPoolBoundHandle удаления.
–или–
Этот метод был вызван после preAllocated удаления.
Комментарии
Неуправляемый указатель, возвращаемый этим методом, можно передать в операционную систему в перекрывающихся операциях ввода-вывода. Структура NativeOverlapped фиксируется в физической памяти до FreeNativeOverlapped вызова метода.
См. также раздел
Применяется к
AllocateNativeOverlapped(IOCompletionCallback, Object, Object)
- Исходный код:
- ThreadPoolBoundHandle.Unix.cs
- Исходный код:
- ThreadPoolBoundHandle.PlatformNotSupported.cs
- Исходный код:
- ThreadPoolBoundHandle.cs
- Исходный код:
- ThreadPoolBoundHandle.Unix.cs
- Исходный код:
- ThreadPoolBoundHandle.Unix.cs
Важно!
Этот 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 .
- Атрибуты
Исключения
callback равно null.
Этот метод был вызван после ThreadPoolBoundHandle удаления объекта.
Комментарии
Неуправляемый указатель, возвращаемый этим методом, можно передать в операционную систему в перекрывающихся операциях ввода-вывода. Структура NativeOverlapped фиксируется в физической памяти, пока не ThreadPoolBoundHandle.FreeNativeOverlapped будет вызвана.
Note
Буферы, указанные в, pinData закреплены в течение операции ввода-вывода.
Буфер или буферы, указанные в pinData неуправляемой операционной системе, должны совпадать с переданными в неуправляемую функцию операционной системы, которая выполняет асинхронный ввод-вывод.