interlockedExchange 函式 (miniport.h)
InterlockedExchange 例程會將整數變數設定為指定的值做為不可部分完成的作業。
語法
LONG InterlockedExchange(
[in, out] LONG volatile *Target,
[in] LONG Value
);
參數
[in, out] Target
要設定為所提供 值 做為不可部分完成作業之變數的指標。
[in] Value
指定要設定變數的值。
傳回值
InterlockedExchange 會在呼叫發生時,傳回 Target 上的變數值。
備註
應該使用 InterlockedExchange ,而不是 ExInterlockedExchangeUlong,因為它既更快又更有效率。
在適當且可能的情況下,編譯程式會內嵌實作 InterlockedExchange。 它不需要微調鎖定,因此可以在可分頁的數據上安全地使用。
對 InterlockedExchange 例程的呼叫只有在其他 InterlockedXxx 呼叫方面才不可部分完成。
無法對非快取記憶體使用連結的作業。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 從 Windows 2000 開始提供。 |
目標平台 | Universal |
標頭 | miniport.h (包括 Wdm.h、Ntddk.h、Ntifs.h、Miniport.h) |
程式庫 | Windows 10 上的 OneCoreUAP.lib |
IRQL | 任何層級 |