mirror of
https://github.com/zeromq/libzmq.git
synced 2025-10-23 08:31:46 +02:00
Add scoped_lock_t syntactic sugar
This commit is contained in:
@@ -128,4 +128,30 @@ namespace zmq
|
|||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
namespace zmq
|
||||||
|
{
|
||||||
|
struct scoped_lock_t
|
||||||
|
{
|
||||||
|
scoped_lock_t (mutex_t& mutex_)
|
||||||
|
: mutex (mutex_)
|
||||||
|
{
|
||||||
|
mutex.lock ();
|
||||||
|
}
|
||||||
|
|
||||||
|
~scoped_lock_t ()
|
||||||
|
{
|
||||||
|
mutex.unlock ();
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
|
||||||
|
mutex_t& mutex;
|
||||||
|
|
||||||
|
// Disable copy construction and assignment.
|
||||||
|
scoped_lock_t (const scoped_lock_t&);
|
||||||
|
const scoped_lock_t &operator = (const scoped_lock_t&);
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Reference in New Issue
Block a user