InterlockedExchangeAdd 函式 (wdm.h)

InterlockedExchangeAdd 例程會將值新增至指定的整數做為不可部分完成的作業,並傳回指定整數的原始值。

語法

LONG InterlockedExchangeAdd(
  [in, out] LONG volatile *Addend,
  [in]      LONG          Value
);

參數

[in, out] Addend

整數變數的指標。

[in] Value

指定要新增至 Addend 的值。

傳回值

InterlockedExchangeAdd 會在呼叫發生時傳回 Addend 變數的原始值。

備註

InterlockedExchangeAdd 應該使用,而不是 ExInterlockedAddUlong, 因為它既更快又更有效率。

在適當且可能的情況下,編譯程式會內嵌實作 InterlockedExchangeAdd。 它不需要微調鎖定,因此可以在可分頁數據上安全地使用。

InterlockedExchangeAdd 只有在其他 InterlockedXxx 呼叫方面是不可部分完成的。

無法對非快取記憶體使用內嵌作業。

規格需求

需求
最低支援的用戶端 從 Windows 2000 開始提供。
目標平台 Universal
標頭 wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h、Miniport.h)
程式庫 Windows 10 上的 OneCoreUAP.lib
IRQL 任何層級

另請參閱

ExInterlockedAddLargeInteger

ExInterlockedAddUlong

InterlockedDecrement

InterlockedIncrement