Функция KsAllocateDefaultClock (ks.h)
Функция KsAllocateDefaultClock выделяет и инициализирует структуру часов по умолчанию.
KSDDKAPI NTSTATUS KsAllocateDefaultClock(
[out] PKSDEFAULTCLOCK *DefaultClock
);
[out] DefaultClock
Указывает общую структуру часов, выделенных вызывающим объектом по умолчанию. Текущее время равно нулю, и для состояния задано значение KSSTATE_STOP. После успешного завершения этой процедуры структура, указанная этим указателем, будет содержать ссылку на часы по умолчанию. Возвращаемые данные следует рассматривать как непрозрачные и зарезервированные для использования системы.
Функция KsAllocateDefaultClock возвращает STATUS_SUCCESS при успешном выполнении или ошибку памяти при неудачном выполнении.
Внутренний элемент DefaultClock.ReferenceCount инициализируется в один функцией KsAllocateDefaultClock. Элемент увеличивается и уменьшается, так как каждый DPC уведомления помещается в очередь и завершается. Когда структура должна быть освобождена, элемент используется для определения того, должен ли владелец часов освободить структуру или если ожидающий DPC должен освободить его асинхронно.
Если часы больше не нужны, драйвер должен вызвать KsFreeDefaultClock, чтобы освободить все ресурсы, выделенные для использования с часами.
Требование | Ценность |
---|---|
целевая платформа | Всеобщий |
заголовка | ks.h (include Ks.h) |
библиотеки | Ks.lib |
IRQL | PASSIVE_LEVEL |