PreAllocatedOverlapped(IOCompletionCallback, Object, Object) Конструктор

Определение

Важно!

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

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

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

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

state
Object

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

pinData
Object

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

Атрибуты

Исключения

callback равно null.

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

Комментарии

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

Note

Буферы, указанные в, pinData закреплены до Dispose вызова метода.

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