40 #ifndef NVWA_OBJECT_LEVEL_LOCK_H 41 #define NVWA_OBJECT_LEVEL_LOCK_H 53 template <
class _Host>
54 class object_level_lock
61 const object_level_lock& _M_host;
65 lock& operator=(
const lock&);
67 explicit lock(
const object_level_lock& host)
77 const object_level_lock* get_locked_object()
const 84 typedef _Host volatile_type;
91 template <
class _Host>
114 _M_host._M_mtx.lock();
118 _M_host._M_mtx.unlock();
132 typedef volatile _Host volatile_type;
134 # endif // _NOTHREADS 138 #endif // NVWA_OBJECT_LEVEL_LOCK_H Type that provides locking/unlocking semantics.
Definition: object_level_lock.h:105
Class for non-reentrant fast mutexes.
Definition: fast_mutex.h:225
A fast mutex implementation for POSIX, Win32, and modern C++.
Helper class for object-level locking.
Definition: object_level_lock.h:92
Common definitions for preprocessing.