/
githubmirror
/
nbs
Обзор
Документация
Войти
/
githubmirror
/
nbs
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
util/system/file_lock.h
34 строки
573 B
qkrorlqr
Initial NBS OpenSource export
28 апр 2023, 21:54
28 апр 2023, 21:54
783a858
Код
Авторство
О чём код?
#pragma once #include <util/generic/fwd.h> #include <util/generic/noncopyable.h> #include <util/system/file.h> enum class EFileLockType { Exclusive, Shared }; class TFileLock: public TFile { public: TFileLock(const TString& filename, const EFileLockType type = EFileLockType::Exclusive); void Acquire(); bool TryAcquire(); void Release(); inline void lock() { Acquire(); } inline bool try_lock() { return TryAcquire(); } inline void unlock() { Release(); } private: EFileLockType Type; };