共用方式為


VideoPortInterlockedExchange 函式 (video.h)

VideoPortInterlockedExchange 函式會鎖定或解除鎖定記憶體區塊,方法是將使用者定義的鎖定變數分別設定 為 TRUEFALSE。 它會傳回先前保留的鎖定變數值。

語法

VIDEOPORT_API LONG VideoPortInterlockedExchange(
  [in, out] IN OUT PLONG Target,
  [in]      IN LONG      Value
);

參數

[in, out] Target

使用者定義鎖定變數的指標,用來控制記憶體緩衝區的存取。

[in] Value

指定要儲存在 Target中的值,這個值表示要鎖定或解除鎖定記憶體緩衝區。 使用 TRUE 鎖定記憶體緩衝區,並 FALSE 來解除鎖定記憶體緩衝區。

傳回值

VideoPortInterlockedExchange 會傳回函式呼叫之前 Target 的值。

言論

VideoPortInterlockedExchange 可用來防止多處理器系統中的 DMA 通用緩衝區爭用。

當緩衝區不是讀取或寫入緩衝區時,鎖定變數的值應該 FALSEVideoPortInterlockedExchange 的後續呼叫,其 Target 參數設定為 TRUE 會將鎖定變數重設為 true ,之後此函式會傳回 false 。 緩衝區現在已鎖定,防止其他線程存取。 當緩衝區的目前作業完成時,請解除鎖定緩衝區,並呼叫 videoPortInterlockedExchange,並將其 Target 參數設定為 FALSE

要求

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

另請參閱

VideoPortGetCommonBuffer

VideoPortInterlockedDecrement

VideoPortInterlockedIncrement