Represents a mutex (mutual exclusion).
More...
#include <glibmm/thread.h>
|
class
|
Lock
|
|
Utility class for exception-safe mutex locking.
More...
|
|
Represents a mutex (mutual exclusion).
It can be used to protect data against shared access. Try to use
Mutex::Lock
instead of calling
lock()
and
unlock()
directly – it will make your life much easier.
-
Note
-
Glib::Mutex
is not recursive, i.e. a thread will deadlock, if it already has locked the mutex while calling
lock()
. Use
Glib::RecMutex
instead, if you need recursive mutexes.
-
Deprecated:
-
Use
Glib::Threads::Mutex
instead.
Glib::Mutex::Mutex
|
(
|
const
Mutex
&
|
|
)
|
|
|
delete
|
GMutex* Glib::Mutex::gobj
|
(
|
|
)
|
|
|
inline
|
void Glib::Mutex::lock
|
(
|
|
)
|
|
Locks the mutex.
If mutex is already locked by another thread, the current thread will block until mutex is unlocked by the other thread.
-
See also
-
Mutex::Lock
bool Glib::Mutex::trylock
|
(
|
|
)
|
|
Tries to lock the mutex.
If the mutex is already locked by another thread, it immediately returns
false
. Otherwise it locks the mutex and returns
true
.
-
Returns
-
Whether the mutex could be locked.
-
See also
-
Mutex::Lock
void Glib::Mutex::unlock
|
(
|
|
)
|
|
Unlocks the mutex.
If another thread is blocked in a
lock()
call for this mutex, it will be woken and can lock the mutex itself.
-
See also
-
Mutex::Lock