DXGK_TIMED_OPERATION_INTERFACE 結構 (dispmprt.h)
DXGK_TIMED_OPERATION_INTERFACE 結構包含時間作業介面中函式的指標,由顯示埠驅動程序實作。
語法
typedef struct _DXGK_TIMED_OPERATION_INTERFACE {
USHORT Size;
USHORT Version;
PVOID Context;
PINTERFACE_REFERENCE InterfaceReference;
PINTERFACE_DEREFERENCE InterfaceDereference;
NTSTATUS((DXGK_TIMED_OPERATION *Op, const LARGE_INTEGER *Timeout,BOOLEAN OsHandled) * )TimedOperationStart;
NTSTATUS((DXGK_TIMED_OPERATION *Op,KPROCESSOR_MODE WaitMode,BOOLEAN Alertable, const LARGE_INTEGER *Interval) * )TimedOperationDelay;
NTSTATUS((DXGK_TIMED_OPERATION *Op,PVOID Object,KWAIT_REASON WaitReason,KPROCESSOR_MODE WaitMode,BOOLEAN Alertable, const LARGE_INTEGER *Timeout) * )TimedOperationWaitForSingleObject;
} DXGK_TIMED_OPERATION_INTERFACE, *PDXGK_TIMED_OPERATION_INTERFACE;
成員
Size
這個結構的大小,以位元組為單位。
Version
計時作業介面的版本號碼。 版本號碼常數定義於 Dispmprt.h (例如,DXGK_TIMED_OPERATION_INTERFACE_VERSION_1) 。
Context
顯示埠驅動程式提供之內容的指標。
InterfaceReference
介面參考函式的指標,由顯示埠驅動程序實作。
InterfaceDereference
顯示埠驅動程式所實作之介面取值函式的指標。
TimedOperationStart
TimedOperationStart 函式會啟動或重新啟動計時作業。
驅動程式應該將Op參數指向之DXGK_TIMED_OPERATION結構的Size成員預設為sizeof (DXGK_TIMED_OPERATION) 。 TimedOperationStart 的參數描述如下。
[out] Op 是描述啟動或重新啟動之計時作業 之DXGK_TIMED_OPERATION 結構的指標。
[in] Timeout 是逾時值的指標,以 100 奈秒為單位,指定已配置給逾時作業完成的相對時間。
[in] OsHandled 是布爾值,指定作業系統是否處理逾時條件。 TRUE 值表示驅動程式沒有處理逾時條件的任何合理方式,並讓操作系統處理逾時條件;FALSE 表示驅動程式會處理逾時條件。
TimedOperationDelay
TimedOperationDelay 函式會將目前的線程放入可警示或不可變的等候狀態,以取得指定時間間隔,以及指定的逾時作業逾時。TimedOperationDelay 的參數描述如下。
[in/out] Op 是描述延遲之計時作業之 DXGK_TIMED_OPERATION 結構的指標。 這個計時作業是由 TimedOperationStart 函式的呼叫所啟動。
[in] WaitMode 是KPROCESSOR_MODE類型的值,指定驅動程式等候的處理器模式。 此值可以是 KernelMode 或 UserMode。 堆疊中的較低層級驅動程序應該指定 KernelMode。
[in] Alertable 是布爾值,指定等候是否可警示。 TRUE 值表示等候是可警示的;FALSE 表示等候不是可修復的。 堆疊中的較低層級驅動程序應該指定 FALSE。
[in] Interval 是變數的指標,其中包含延遲的 100 奈秒單位相對時間。 忽略值的正負號。
TimedOperationWaitForSingleObject
TimedOperationWaitForSingleObject 函式會將目前的線程放入等候狀態,直到指定的發送器物件設定為訊號狀態,或選擇性地直到等候逾時或逾時指定的作業到期為止。 TimedOperationWaitForSingleObject 的參數描述如下。
[in] Op 是 DXGK_TIMED_OPERATION 結構的指標,描述要放入等候狀態的計時作業。 這個計時作業是由 TimedOperationStart 函式的呼叫所啟動。
對像是 呼叫端提供記憶體之初始化發送器物件的指標。 發送器物件可以是事件、mutex、旗號、線程或定時器。
WaitReason 是KWAIT_REASON類型的值,指定等候的原因。 驅動程式應該將此值設定為 Executive ,或者,如果驅動程式代表使用者執行工作,並在使用者線程的內容中執行,則為 UserRequest。
WaitMode 是KPROCESSOR_MODE類型的值,指定驅動程式等候的處理器模式。 此值可以是 KernelMode 或 UserMode。 最低層級和中繼驅動程序應該指定 KernelMode。 如果 Object 參數所指向的物件是 mutex,呼叫端必須指定 KernelMode。
Alertable 是布爾值,指定等候是否可警示。 TRUE 值表示等候是可警示的;FALSE 表示等候不是可修復的。
Timeout 是變數的指標,其中包含以 100 奈秒為單位的相對時間,等候完成。 忽略值的正負號。
備註
顯示迷你埠驅動程式會提供這個結構的 Size 和 Version 成員,然後呼叫 DxgkCbQueryServices,以填入這個結構的其餘成員。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista |
標頭 | dispmprt.h (包括 Dispmprt.h) |