共用方式為


DXGKDDI_CONTROLINTERRUPT3回呼函式 (d3dkmddi.h)

DxgkDdi_ControlInterrupt3函式會啟用或停用圖形硬體上指定 VidPnSourceId 的指定中斷類型。

語法

DXGKDDI_CONTROLINTERRUPT3 DxgkddiControlinterrupt3;

NTSTATUS DxgkddiControlinterrupt3(
  [in] IN_CONST_HANDLE hAdapter,
  [in] IN_CONST_PDXGKARG_CONTROLINTERRUPT3 InterruptControl
)
{...}

參數

[in] hAdapter

圖形處理單位的配接器物件的句柄, (GPU) 。 驅動程式從呼叫其 DxgkDdiAddDevice 函式傳回 MiniportDeviceContext 參數中的這個句柄。

[in] InterruptControl

提供中斷類型、VSYNC 狀態和 VidPnSourceId 的DXGKARG_CONTROLINTERRUPT3 結構。

傳回值

DxgkDdi_ControlInterrupt3 傳回下列其中一個值:

傳回碼 描述
STATUS_SUCCESS 中斷類型已成功在圖形硬體上啟用或停用。
STATUS_NOT_IMPLEMENTED DxgkDdi_ControlInterrupt3 不支援啟用或停用指定的中斷類型。

備註

VSync 控件用於 WDDM,以切換 VSync ON 和 OFF,以在案例的使用中使用 VidPn 來源之間取得平衡,以及關閉 VSync 所達到的省電。 一般而言,操作系統會控制 VSync 應該保持開啟和關閉的邏輯,並透過 DDI 呼叫通知 IHV 核心模式驅動程式 (KMD) 。 KMD 會執行要求。 在 Windows 10 版本 2004 (WDDM 2.7) 之前,VSync 控件的數據粒度是每個適配卡;也就是說,針對指定的配接器,VSync 控件會套用至適配卡的每個 VidPn 來源。 例如,假設有兩個 VidPn 來源連接到兩個不同的輸出的配接器。 如果其中一個輸出沒有活動,而且其中沒有 VSync/VBlank 的取用者,則只有一個選項:OS 必須保留 VSync ON 以供非使用中的輸出使用。

對於雙螢幕可攜式裝置,當不需要 VSync ON 時,將 VSync 保持為一個螢幕有顯著的電源成本。 它需要顯示控制器/顯示連結保持作用中,並防止支援自我重新整理的面板進入低頻率、低電源的自我重新整理模式。 在 Windows 10 版本 2004 和更新版本中,DxgkDdiControlInterrupt3 允許更細微的 VSync 控制每個配接器的 VidPn 來源。

在適配卡存留期內,OS 只會使用其中一個 DxgkDdiControlInterrupt3DxgkDdi_ControlInterrupt2

未實作 DxgkDdi_ControlInterrupt3 的 WDDM 2.7 驅動程式退出宣告獨立的 VidPn VSync 控制件,而 OS 只會呼叫 DxgkDdi_ControlInterrupt2。 在不支援DxgkDdi_ControlInterrupt3的驅動程式中,DXGK_DRIVERCAPS獨立>VidPnVSync功能必須是0;否則,OS 將會失敗適配卡初始化。 如果驅動程式確實實 作DxgkDdi_ControlInterrupt3,則可以將功能設定為0或1,以指出 Per-VidPn 支援。

規格需求

需求
最低支援的用戶端 Windows 10 (版本 2004)
標頭 d3dkmddi.h

另請參閱

DXGKARG_CONTROLINTERRUPT2

DXGK_DRIVERCAPS

DXGKARG_CONTROLINTERRUPT3

DxgkDdi_ControlInterrupt2