InterlockedExchangeAdd

InterlockedExchangeAdd是一個 Windows API 函式,用於對一個32位數值執行加法的原子操作。

基本介紹

  • 中文名:InterlockedExchangeAdd
  • 函式功能:如果變數共享記憶體
  • 函式原型:_Inout_  LONG volatile 
  • 參數:指針的數目將會增值
函式功能,函式原型,參數,返回值,備註,

函式功能

InterlockedCompareExchange,InterlockedDecrement,InterlockedExchange,InterlockedIncrement機制提供了一個簡單的同步訪問一個變數共享多個執行緒。 執行緒可以使用不同的過程機制如果變數在共享記憶體
這個函式執行InterlockedExchangeAdd原子增加價值的價值指向加數。 結果被存放在指定的地址加數。初始值的變數指向由加數返回的功能價值。
為InterlockedExchangeAdd變數必須在一個32位的邊界對齊;否則,該函式會失敗的基於多處理機系統和任何non-x86 x86系統。

函式原型

LONG__cdeclInterlockedExchangeAdd(_Inout_LONGvolatile*Addend,_In_LONGValue);
這個函式執行InterlockExchangeAdd原子再加一個一個加數增加價值的變數。這個功能可不止一個執行緒使用相同的變數同時進行。

參數

加數
[在輸入/輸出]指針的數目將會增值。
[]指定號碼被加到一個變數指向的加數的參數。

返回值

返回值是*Addend的初始值。The return value is the initial value of the variable pointed to by the Addend parameter.

備註

該interlockedexchangeadd,interlockedcompareexchange,interlockeddecrement,interlockedexchange interlockedincrement功能,並提供一個簡單的機制同步訪問一個變數,是由多個執行緒共享。在不同的執行緒,進程可以使用這一機制,如果變數是在共享記憶體。
執行一個原子的interlockedexchangeadd功能增加增量值的價值指向加數。其結果是存儲在指定的地址加數。變數的初始值指向加數返回的函式值。
變數的InterlockedExchangeAdd必須是32位邊界對齊的。64位的用InterlockedExchangeAdd64函式。

相關詞條

熱門詞條

聯絡我們