функция _interlockedbittestandset (winnt.h)
Проверяет указанный бит указанного значения LONG и задает для него значение 1. Операция атомарна.
Синтаксис
BOOLEAN _interlockedbittestandset(
[in] LONG volatile *Base,
[in] LONG Offset
);
Параметры
[in] Base
Указатель на переменную.
[in] Offset
Битовое положение для проверки. Смещение от наименее значимой позиции бита, с нулевым тестированием наименее значимых битов и 31 тестированием наиболее значимых битов.
Возвращаемое значение
Значение указанного бита.
Замечания
Межблокированные функции предоставляют простой механизм синхронизации доступа к переменной, к которой используется несколько потоков. Эта функция атомарна относительно вызовов других взаимоблокируемых функций.
Эта функция реализуется с помощью встроенного компилятора, где это возможно. Дополнительные сведения см. в файле заголовка WinBase.h и _interlockedbittestandset.
Эта функция создает полный барьер памяти (или забор), чтобы обеспечить выполнение операций памяти в порядке.
Требования
Требование | Ценность |
---|---|
целевая платформа | Виндоус |
заголовка | winnt.h (включая Windows.h) |
См. также
межблокированного доступа к переменной
InterlockedBitTestAndResetAcquire
InterlockedBitTestAndResetRelease
InterlockedBitTestAndSetAcquire