interlockedAdd 函数 (winnt.h)

对指定的 LONG 值执行原子加法运算。

语法

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

参数

[in, out] Addend

指向第一个操作数的指针。 此值将替换为操作的结果。

[in] Value

第二个操作数。

返回值

函数返回操作的结果。

注解

互锁函数提供了一种简单机制,用于同步对由多个线程共享的变量的访问。 对于对其他互锁函数的调用,此函数是原子的。

此函数是尽可能使用编译器内部函数实现的。 有关详细信息,请参阅 WinBase.h 头文件和 _InterlockedAdd

此函数生成完整的内存屏障 (或围栏) ,以确保按顺序完成内存操作。

注意基于 Windows RT 的系统支持此函数。
 

要求

要求
目标平台 Windows
标头 winnt.h (包括 Windows.h)

另请参阅

互锁变量访问

InterlockedAdd64

InterlockedAddAcquire

InterlockedAddAcquire64

InterlockedAddNoFence

InterlockedAddNoFence64

InterlockedAddRelease

InterlockedAddRelease64

InterlockedExchangeAdd

同步函数