spin_lock_base.h 558 B

12345678910111213141516171819202122232425
  1. #pragma once
  2. #include <util/system/src_location.h>
  3. namespace NYT::NThreading {
  4. ////////////////////////////////////////////////////////////////////////////////
  5. class TSpinLockBase
  6. {
  7. public:
  8. constexpr TSpinLockBase();
  9. explicit constexpr TSpinLockBase(const ::TSourceLocation& location);
  10. protected:
  11. const ::TSourceLocation Location_;
  12. };
  13. ////////////////////////////////////////////////////////////////////////////////
  14. } // namespace NYT::NThreading
  15. #define SPIN_LOCK_BASE_INL_H_
  16. #include "spin_lock_base-inl.h"
  17. #undef SPIN_LOCK_BASE_INL_H_