/
githubmirror
/
nbs
Обзор
Документация
Войти
/
githubmirror
/
nbs
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
library/cpp/time_provider/monotonic_provider.cpp
32 строки
887 B
snaury
Switch TMonotonic to CLOCK_BOOTTIME instead of a separate type
17 май 2023, 00:09
17 май 2023, 00:09
efdf4ed
Код
Авторство
О чём код?
#include "monotonic_provider.h" namespace NMonotonic { namespace { TIntrusivePtr<IMonotonicTimeProvider> GlobalMonotonicTimeProvider; } void TMonotonicOperator::RegisterProvider(TIntrusivePtr<IMonotonicTimeProvider> provider) { GlobalMonotonicTimeProvider = provider; } NMonotonic::TMonotonic TMonotonicOperator::Now() { if (GlobalMonotonicTimeProvider) { return GlobalMonotonicTimeProvider->Now(); } else { return TMonotonic::Now(); } } class TDefaultMonotonicTimeProvider: public IMonotonicTimeProvider { public: TMonotonic Now() override { return TMonotonic::Now(); } }; TIntrusivePtr<IMonotonicTimeProvider> CreateDefaultMonotonicTimeProvider() { return TIntrusivePtr<IMonotonicTimeProvider>(new TDefaultMonotonicTimeProvider); } }