Google

logo top
Main Page   Widgets   Namespaces   Book  

Glib::Mutex::Lock Class Reference
[Threads]

Utility class for exception-safe mutex locking. More...

List of all members.

Public Methods

 Lock (Mutex& mutex)
 Lock (Mutex& mutex, NotLock)
 Lock (Mutex& mutex, TryLock)
 ~Lock ()
void acquire ()
bool try_acquire ()
void release ()
bool locked () const


Detailed Description

Utility class for exception-safe mutex locking.

Usage example:
 {
   Glib::Mutex::Lock lock (mutex); // calls mutex.lock()
   do_something();
 } // the destructor calls mutex.unlock()
 
As you can see, the compiler takes care of the unlocking. This is not only exception safe but also much less error-prone. You could even return while still holding the lock and it will be released properly.
Examples:

thread/thread.cc.


Constructor & Destructor Documentation

Glib::Mutex::Lock::Lock ( Mutex   mutex [inline, explicit]
 

Glib::Mutex::Lock::Lock ( Mutex   mutex,
NotLock   
[inline]
 

Glib::Mutex::Lock::Lock ( Mutex   mutex,
TryLock   
[inline]
 

Glib::Mutex::Lock::~Lock (   [inline]
 


Member Function Documentation

void Glib::Mutex::Lock::acquire (   [inline]
 

bool Glib::Mutex::Lock::locked (   const [inline]
 

void Glib::Mutex::Lock::release (   [inline]
 

bool Glib::Mutex::Lock::try_acquire (   [inline]
 


The documentation for this class was generated from the following file:
Generated for gtkmm by Doxygen 1.3-rc1 © 1997-2001