Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
StorPortQueryDpcWatchdogInformation запрашивает значения таймера DPC для текущего процессора.
Синтаксис
ULONG StorPortQueryDpcWatchdogInformation(
[in] PVOID HwDeviceExtension,
[out] PSTOR_DPC_WATCHDOG_INFORMATION DpcWatchdogInformation
);
Параметры
[in] HwDeviceExtension
Указатель на расширение устройства минипорта.
[out] DpcWatchdogInformation
Указатель на структуру STOR_DPC_WATCHDOG_INFORMATION, в которой будут записаны сведения о наблюдателях DPC.
Возвращаемое значение
Эта функция возвращает один из следующих кодов состояния.
Возвращаемый код | Описание |
---|---|
STOR_STATUS_SUCCESS | Сведения о наблюдателях DPC успешно запрашивались. |
STOR_STATUS_INVALID_PARAMETER | Недопустимый параметр; Например, DpcWatchdogInformation имеет значение NULL. |
STOR_STATUS_UNSUCCESSFUL | Возвращается по другим внутренним причинам системы. |
Замечания
Минипорт может вызывать StorPortQueryDpcWatchdogInformation в IRQL=DISPATCH_LEVEL, чтобы определить время, остающееся до истечения времени ожидания вызова отложенной процедуры (DPC). Операционная система реализует таймер отслеживания DPC, чтобы определить, когда одна подпрограмма DPC выполняется слишком долго или когда ряд подпрограмм DPC выполняется слишком долго. Если включена ошибка времени ожидания DPC, и если подпрограмма DPC превышает ограничение времени для одной подпрограммы, или ряд подпрограмм DPC превышает агрегированное ограничение времени, DPC_WATCHDOG_VIOLATION (0x133) возникает проверка ошибок.
storPortQueryDpcWatchdogInformation необходимо вызывать, пока DPC выполняется или вызывается в IRQL= DISPATCH_LEVEL или более поздней версии на текущем процессоре. В противном случае вызов завершается ошибкой и возвращает STOR_STATUS_UNSUCCESSFUL.
Подпрограммы DPC должны выполняться только в течение коротких периодов и должны делегировать максимальное количество обработки рабочим потокам. Чтобы избежать снижения скорости реагирования системы, обычная подпрограмма DPC должна выполняться не более чем на 100 микросекунд при каждом вызове. Общие сведения см. в руководства по написанию подпрограмм DPC.
Требования
Требование | Ценность |
---|---|
минимальный поддерживаемый сервер | Windows Server 2022 |
заголовка | storport.h |
IRQL | DISPATCH_LEVEL |