#include <swcdb/core/MutexSptd.h>
Classes | |
class | scope |
class | scope_except |
Public Member Functions | |
SWC_CAN_INLINE | MutexSptd () noexcept |
MutexSptd (const MutexSptd &)=delete | |
MutexSptd (MutexSptd &&)=delete | |
MutexSptd & | operator= (const MutexSptd &)=delete |
MutexSptd & | operator= (MutexSptd &&)=delete |
~MutexSptd () noexcept | |
SWC_CAN_INLINE bool | lock_except () |
SWC_CAN_INLINE bool | lock () noexcept |
bool | try_full_lock (bool &support) noexcept |
SWC_CAN_INLINE void | unlock (const bool &support) noexcept |
Private Attributes | |
std::mutex | m_mutex |
Additional Inherited Members | |
![]() | |
constexpr SWC_CAN_INLINE | MutexAtomic () noexcept |
MutexAtomic (const MutexAtomic &)=delete | |
MutexAtomic (MutexAtomic &&)=delete | |
MutexAtomic & | operator= (const MutexAtomic &)=delete |
MutexAtomic & | operator= (MutexAtomic &&)=delete |
~MutexAtomic () noexcept | |
SWC_CAN_INLINE bool | try_lock () const noexcept |
SWC_CAN_INLINE void | lock () const noexcept |
void | lock (const uint32_t &us_sleep) const noexcept |
SWC_CAN_INLINE void | unlock () const noexcept |
Definition at line 16 of file MutexSptd.h.
|
inlineexplicitnoexcept |
Definition at line 20 of file MutexSptd.h.
|
delete |
|
delete |
|
inlinenoexcept |
Definition at line 27 of file MutexSptd.h.
|
inlinenoexcept |
Definition at line 39 of file MutexSptd.h.
References SWC::Core::MutexAtomic::lock(), m_mutex, and SWC::Core::MutexAtomic::try_lock().
Referenced by SWC::client::Mngr::Groups::on_cfg_update(), and SWC::Ranger::Blocks::scan().
|
inline |
Definition at line 30 of file MutexSptd.h.
References SWC::Core::MutexAtomic::lock(), m_mutex, and SWC::Core::MutexAtomic::try_lock().
|
inlinenoexcept |
Definition at line 55 of file MutexSptd.h.
References m_mutex, and SWC::Core::MutexAtomic::try_lock().
Referenced by SWC::Ranger::Blocks::_split(), SWC::Manager::RangersResources::check(), SWC::Manager::Rangers::health_check_columns(), SWC::Ranger::CellStore::Block::Read::processing(), SWC::Ranger::CommitLog::Fragment::processing(), SWC::Ranger::Block::processing(), SWC::Ranger::Blocks::processing(), SWC::Ranger::CellStore::Block::Read::release(), SWC::Ranger::CommitLog::Fragment::release(), SWC::Ranger::Block::release(), SWC::Ranger::Blocks::release(), and SWC::Ranger::Blocks::scan().
|
inlinenoexcept |
Definition at line 71 of file MutexSptd.h.
References m_mutex, and SWC::Core::MutexAtomic::unlock().
Referenced by SWC::Ranger::Blocks::_split(), SWC::Manager::RangersResources::check(), SWC::Manager::Rangers::health_check_columns(), SWC::client::Mngr::Groups::on_cfg_update(), SWC::Ranger::CellStore::Block::Read::processing(), SWC::Ranger::CommitLog::Fragment::processing(), SWC::Ranger::Block::processing(), SWC::Ranger::Blocks::processing(), SWC::Ranger::CellStore::Block::Read::release(), SWC::Ranger::CommitLog::Fragment::release(), SWC::Ranger::Block::release(), SWC::Ranger::Blocks::release(), SWC::Ranger::Blocks::scan(), SWC::Core::MutexSptd::scope::~scope(), and SWC::Core::MutexSptd::scope_except::~scope_except().
|
private |
Definition at line 116 of file MutexSptd.h.
Referenced by lock(), lock_except(), try_full_lock(), and unlock().