_interlockedbittestandreset関数 (winnt.h)

指定した LONG 値の指定したビットをテストし、0 に設定します。 この操作はアトミックです。

構文

BOOLEAN _interlockedbittestandreset(
  [in] LONG volatile *Base,
  [in] LONG          Offset
);

パラメーター

[in] Base

変数へのポインター。

[in] Offset

テストするビット位置。

戻り値

指定したビットの値。

注釈

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

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

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

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

要件

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

こちらもご覧ください

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

InterlockedBitTestAndReset64

InterlockedBitTestAndResetAcquire

InterlockedBitTestAndResetRelease

InterlockedBitTestAndSet

InterlockedBitTestAndSet64

InterlockedBitTestAndSetAcquire

InterlockedBitTestAndSetRelease

同期関数