InterlockedAdd 関数 (winnt.h)

指定した LONG 値に対してアトミック加算操作を実行します。

構文

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

パラメーター

[in, out] Addend

最初のオペランドへのポインター。 この値は、操作の結果に置き換えられます。

[in] Value

2 番目のオペランド。

戻り値

関数は、操作の結果を返します。

注釈

インターロックされた関数は、複数のスレッドによって共有される変数へのアクセスを同期するための簡単なメカニズムを提供します。 この関数は、他のインターロックされた関数の呼び出しに関してアトミックです。

この関数は、可能な場合はコンパイラ組み込みを使用して実装されます。 詳細については、WinBase.h ヘッダー ファイルと _InterlockedAddを参照してください。

この関数は、メモリ操作が順番に完了するように、完全なメモリ バリア (またはフェンス) を生成します。

メモこの関数は、Windows RT ベースのシステムでサポートされています。
 

要件

要件
対象プラットフォーム Windows
ヘッダー winnt.h (Windows.h を含む)

こちらもご覧ください

インタロックされた変数アクセス

InterlockedAdd64

InterlockedAddAcquire

InterlockedAddAcquire64

InterlockedAddNoFence

InterlockedAddNoFence64

InterlockedAddRelease

InterlockedAddRelease64

InterlockedExchangeAdd

同期関数