InterlockedExchange16 関数 (winnt.h)
16 ビット変数をアトミック操作として指定された値に設定します。
32 ビット変数を操作するには、InterlockedExchange 関数を使用します。
64 ビット変数を操作するには、InterlockedExchange64 関数を使用します。
構文
SHORT InterlockedExchange16(
[in, out] SHORT volatile *Destination,
[in] SHORT ExChange
);
パラメーター
[in, out] Destination
交換する値へのポインター。 この関数は、この変数を ExChange
[in] ExChange
宛先が指す値
戻り値
この関数は、Destination パラメーターの初期値を返します。
備考
インターロックされた関数は、複数のスレッドによって共有される変数へのアクセスを同期するための簡単なメカニズムを提供します。 この関数は、他のインターロックされた関数の呼び出しに関してアトミックです。
この関数は、可能な限りコンパイラ組み込みを使用して実装されます。 詳細については、WinBase.h ヘッダー ファイルと _InterlockedExchange16を参照してください。
この関数は、メモリ操作が順番に完了するように、完全なメモリ バリア (またはフェンス) を生成します。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows Vista [デスクトップ アプリ |UWP アプリ] |
サポートされる最小サーバー | Windows Server 2003 [デスクトップ アプリ |UWP アプリ] |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー | winnt.h (Windows.h を含む) |
関連項目
インタロックされた変数アクセス を
InterlockedCompareExchange の
InterlockedExchange の
InterlockedExchange16Acquire の
InterlockedExchange64 の
InterlockedExchangeAcquire の
InterlockedExchangeAcquire64 の
InterlockedExchangeAdd の
InterlockedExchangePointer の
InterlockedExchangePointerAcquire の
InterlockedExchangePointerNoFence の
InterlockedExchangeSubtract の