sync#

namespace sync_util#
template<class T, class M = std::mutex>
class sync_t#

Public Types

using mutex_t = M#
using value_t = T#

Public Functions

inline std::lock_guard<mutex_t> lock()#
inline value_t &operator*()#
inline const value_t &operator*() const#
inline value_t *operator->()#
inline sync_t &operator=(const value_t &val) noexcept#
inline sync_t &operator=(sync_t &&other) noexcept#
inline sync_t &operator=(sync_t &other) noexcept#
template<class V>
inline sync_t &operator=(V &&val)#
inline sync_t &operator=(value_t &&val) noexcept#
template<class ...Args>
inline sync_t(Args&&... args)#

Public Members

value_t raw#

Private Members

mutex_t _lock#