Функция IoAllocateWorkItem (wdm.h)
Подпрограмма IoAllocateWorkItem выделяет рабочий элемент.
Синтаксис
PIO_WORKITEM IoAllocateWorkItem(
[in] PDEVICE_OBJECT DeviceObject
);
Параметры
[in] DeviceObject
Указатель на объект драйвера вызывающего объекта или на один из объектов устройства вызывающего объекта. Если позже вызывающий объект передаст рабочий элемент в IoQueueWorkItem, DeviceObject должен указывать на объект устройства.
Возвращаемое значение
IoAllocateWorkItem возвращает указатель на выделенную IO_WORKITEM структуру. Подпрограмма возвращает значение NULL , если не существует достаточного количества ресурсов.
Комментарии
Драйвер должен освободить рабочий элемент, возвращаемый IoAllocateWorkItem , вызвав IoFreeWorkItem.
IoAllocateWorkItem выделяет и инициализирует рабочий элемент. Связанная подпрограмма IoInitializeWorkItem инициализирует рабочий элемент в хранилище, которое ранее выделил драйвер. Не вызывайте IoInitializeWorkItem для инициализации рабочего элемента, выделенного IoAllocateWorkItem.
Дополнительные сведения о рабочих элементах см. в разделе Системные рабочие потоки.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно в Windows 2000 и более поздних версиях операционной системы Windows, а также в Windows Me. Эта подпрограмма недоступна в Windows 98. |
Целевая платформа | Универсальное |
Верхняя часть | wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h) |
Библиотека | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |