/
githubmirror
/
nbs
Обзор
Документация
Войти
/
githubmirror
/
nbs
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
library/cpp/yt/threading/spin_wait.h
37 строк
752 B
qkrorlqr
Initial NBS OpenSource export
28 апр 2023, 21:54
28 апр 2023, 21:54
783a858
Код
Авторство
О чём код?
#pragma once #include "spin_wait_hook.h" #include <library/cpp/yt/cpu_clock/clock.h> #include <util/datetime/base.h> #include <util/system/src_location.h> namespace NYT::NThreading { //////////////////////////////////////////////////////////////////////////////// class TSpinWait { public: TSpinWait( const ::TSourceLocation& location, ESpinLockActivityKind activityKind); ~TSpinWait(); void Wait(); private: const ::TSourceLocation Location_; const ESpinLockActivityKind ActivityKind_; int SpinIteration_ = 0; int SleepIteration_ = 0; TCpuInstant SlowPathStartInstant_ = -1; }; //////////////////////////////////////////////////////////////////////////////// } // namespace NYT::NThreading