共用方式為


VideoPortSynchronizeExecution 函式 (video.h)

VideoPortSynchronizeExecution 函式會同步處理迷你埠驅動程式提供 HwVidSynchronizeExecutionCallback 函式與迷你埠驅動程式 HwVidInterrupt 函式的執行。 否則,它會以較高的優先順序執行 HwVidSynchronizeExecutionCallback

語法

VIDEOPORT_DEPRECATED BOOLEAN VIDEOPORT_API VideoPortSynchronizeExecution(
  PVOID                         HwDeviceExtension,
  VIDEO_SYNCHRONIZE_PRIORITY    Priority,
  PMINIPORT_SYNCHRONIZE_ROUTINE SynchronizeRoutine,
  PVOID                         Context
);

參數

HwDeviceExtension

迷你埠驅動程式裝置延伸模組的指標。

Priority

指定必須執行指定 SynchronizeRoutine 的優先順序類型,如下所示:

  • 如果 優先順序 設定為 VpLowPriority,則目前的線程會提升為最高的非中斷遮罩優先順序。 因此,如果裝置中斷,目前線程只能由ISR先佔。
  • 如果 Priority 設定為 VpMediumPriority,而迷你埠驅動程式具有與其視訊配接器相關聯的 ISR,則會與迷你埠驅動程式的 HwVidInterrupt 函式同步至指定的 SynchronizeRoutine 呼叫。 否則,會在 VpLowPriority 層級進行同步處理。
  • VpHighPriority 的效果與 VpMediumPriority相同。

SynchronizeRoutine

迷你埠驅動程式 HwVidSynchronizeExecutionCallback 函式的指標。

Context

要傳遞至迷你埠驅動程式 HwVidSynchronizeExecutionCall back 函式之呼叫端提供內容的指標。 這個指標可以 NULL

傳回值

如果作業成功,VideoPortSynchronizeExecution 會傳回 true

言論

迷你埠驅動程式很少呼叫此例程,除非下列任一條件保留:

  • 迷你埠驅動程式的 HwVidInterrupt 函式與其他迷你埠驅動程式函式共用記憶體。 若要以多處理器安全的方式存取共用記憶體,這類迷你埠驅動程式函式必須使用 HwVidSynchronizeExecutionCallback呼叫 VideoPortSynchronizeExecution。 此迷你埠驅動程式函式可以安全地存取共用記憶體,因為視訊埠驅動程式可防止 HwVidInterrupt 函式同時存取相同的記憶體。
  • 配接器必須使用一連串的命令進行程序設計,而不會受到內容切換。 例如,小型埠驅動程式的 SvgaHwIoPortXxx 函式會緩衝處理一連串 I/O 指令,並驗證序列可能會呼叫 VideoPortSynchronizeExecutionHwVidSynchronizeExecutionCallback。 此迷你埠驅動程式函式可以非常快速地將經過緩衝和驗證的 I/O 數據流傳送至配接器。
呼叫端應該為工作指定最低實際 優先順序 值,HwVidSynchronizeExecutionCallback 必須執行。 任何以高硬體優先順序執行 CallbackRoutineVpMediumPriorityVpHighPriority) 都應該儘快傳回控制權。 具有如此高優先順序 HwVidSynchronizeExecutionCallback 函式的驅動程式,應該設計為在所有其他驅動程式函式中盡可能執行大量工作,但除了其中一個 HwVidSynchronizeExecutionCallbackHwVidInterrupt 函式之外。

VideoPortSynchronizeExecution 的呼叫端必須在 IRQL 上執行

要求

要求 價值
最低支援的用戶端 適用於 Windows 2000 和更新版本的 Windows作系統。
目標平臺 桌面
標頭 video.h (include Video.h)
連結庫 Videoprt.lib
DLL Videoprt.sys
IRQL <= DIRQL

另請參閱

HwVidInterrupt

HwVidSynchronizeExecutionCallback