InterlockedExchangeAdd是一個 Windows API 函式,用於對一個32位數值執行加法的原子操作。
基本介紹
函式功能,函式原型,參數,返回值,其他信息,
函式功能
InterlockedCompareExchange,InterlockedDecrement,InterlockedExchange,InterlockedIncrement機制提供了一個簡單的同步訪問一個變數共享多個執行緒。 執行緒可以使用不同的過程機制如果變數在共享記憶體。
這個函式執行InterlockedExchangeAdd原子增加價值的價值指向加數。 結果被存放在指定的地址加數。初始值的變數指向由加數返回的功能價值。
函式原型
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函式。