/
githubmirror
/
nbs
Обзор
Документация
Войти
/
githubmirror
/
nbs
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
library/cpp/threading/atomic/bool.h
36 строк
740 B
qkrorlqr
Initial NBS OpenSource export
28 апр 2023, 21:54
28 апр 2023, 21:54
783a858
Код
Авторство
О чём код?
#pragma once #include <library/cpp/deprecated/atomic/atomic.h> namespace NAtomic { class TBool { public: TBool() noexcept = default; TBool(bool val) noexcept : Val_(val) { } TBool(const TBool& src) noexcept { AtomicSet(Val_, AtomicGet(src.Val_)); } operator bool() const noexcept { return AtomicGet(Val_); } const TBool& operator=(bool val) noexcept { AtomicSet(Val_, val); return *this; } const TBool& operator=(const TBool& src) noexcept { AtomicSet(Val_, AtomicGet(src.Val_)); return *this; } private: TAtomic Val_ = 0; }; }