Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
[Применимо только к KMDF]
Метод WdfDmaTransactionSetImmediateExecution помечает указанную транзакцию DMA, чтобы вызовы WdfDmaTransactionExecute и WdfDmaTransactionAllocateResources немедленно или сбой транзакции.
Синтаксис
VOID WdfDmaTransactionSetImmediateExecution(
[in] WDFDMATRANSACTION DmaTransaction,
[in] BOOLEAN UseImmediateExecution
);
Параметры
[in] DmaTransaction
Дескриптор объекта транзакции DMA, который будет пометить для немедленного выполнения.
[in] UseImmediateExecution
Логическое значение, указывающее, что транзакция должна выполняться немедленно (или завершиться ошибкой, если ресурсы недоступны) и, если значение FALSE, указывает, что транзакция должна быть поставлена в очередь для выполнения после доступности ресурсов DMA.
Возвращаемое значение
Нет
Замечания
Перед вызовом WdfDmaTransactionSetImmediateExecutionдрайвер должен инициализировать транзакцию.
Если драйвер вызывает WdfDmaTransactionExecute или WdfDmaTransactionAllocateResources после вызова WdfDmaTransactionSetImmediateExecution с UseImmediateExecution значение TRUE, а ресурсы, необходимые для запроса, недоступны, этот метод возвращает STATUS_INSUFFICIENT_RESOURCES. Если необходимые ресурсы доступны, платформа утверждает их и инициирует вызов синхронно.
После того как драйвер помечает транзакцию для немедленного выполнения, транзакция остается помеченной как такая, пока драйвер не вызывает WdfDmaTransactionRelease или очищает флаг, вызвав WdfDmaTransactionSetImmediateExecution с UseImmediateExecution значение FALSE.
WdfDmaTransactionSetImmediateExecution требует DMA версии 3. Чтобы выбрать DMA версии 3, задайте WdmDmaVersionOverride член WDF_DMA_ENABLER_CONFIG 3.
Если драйвер вызывает этот метод в операционной системе раньше Windows 8, проверяющего средства платформы сообщает об ошибке.
Требования
| Требование | Ценность |
|---|---|
| Минимально поддерживаемый клиент | Windows 8 |
| целевая платформа | универсальный |
| минимальная версия KMDF | 1.11 |
| Заголовок | wdfdmatransaction.h (include Wdf.h) |
| Библиотека | Wdf01000.sys (см. управление версиями библиотеки Платформы).) |
| IRQL | <=DISPATCH_LEVEL |
| правил соответствия DDI | DriverCreate(kmdf) |