функция _interlockedbittestandreset (winnt.h)

Проверяет указанный бит указанного значения LONG и устанавливает для него значение 0. Эта операция является атомарной.

Синтаксис

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

Параметры

[in] Base

Указатель на переменную.

[in] Offset

Битовая позиция для тестирования.

Возвращаемое значение

Значение указанного бита.

Комментарии

Функции с блокировкой предоставляют простой механизм для синхронизации доступа к переменной, совместно используемой несколькими потоками. Эта функция является атомарной по отношению к вызовам других взаимосвязанных функций.

Эта функция реализуется с помощью встроенной функции компилятора, где это возможно. Дополнительные сведения см. в файле заголовка WinBase.h и _interlockedbittestandreset.

Эта функция создает полный барьер памяти (или ограждение), чтобы гарантировать, что операции с памятью выполняются по порядку.

Примечание Эта функция поддерживается в системах на основе Windows RT.
 

Требования

Требование Значение
Целевая платформа Windows
Header winnt.h (включая Windows.h)

См. также раздел

Доступ к переменной interlocked

InterlockedBitTestAndReset64

InterlockedBitTestAndResetAcquire

InterlockedBitTestAndResetRelease

InterlockedBitTestAndSet

InterlockedBitTestAndSet64

InterlockedBitTestAndSetAcquire

InterlockedBitTestAndSetRelease

Функции синхронизации