Guard class to apply scope based mutex locking to objects.
More...
#include <thread.h>
|
| AutoProtect (const void *object) |
| Construct a guard for a specific object.
|
|
| operator bool () const |
|
bool | operator! () const |
|
| ~AutoProtect () |
| Release mutex when guard falls out of scope.
|
|
|
| AutoProtect () |
| Create an unitialized instance of guard.
|
|
void | release (void) |
| Prematurely release a guard.
|
|
void | set (const void *object) |
| Set guard to mutex lock a new object.
|
|
Guard class to apply scope based mutex locking to objects.
The mutex is located from the mutex pool rather than contained in the target object, and the lock is released when the guard object falls out of scope. This is essentially an automation mechanism for mutex::protect.
- Author
- David Sugar dyfet.nosp@m.@gnu.nosp@m.telep.nosp@m.hony.nosp@m..org
Definition at line 556 of file thread.h.
◆ AutoProtect() [1/2]
ucommon::AutoProtect::AutoProtect |
( |
| ) |
|
|
protected |
Create an unitialized instance of guard.
Usually used with a guard = operator.
◆ AutoProtect() [2/2]
ucommon::AutoProtect::AutoProtect |
( |
const void * | object | ) |
|
Construct a guard for a specific object.
- Parameters
-
◆ operator bool()
ucommon::AutoProtect::operator bool |
( |
| ) |
const |
|
inline |
◆ operator!()
bool ucommon::AutoProtect::operator! |
( |
| ) |
const |
|
inline |
◆ set()
void ucommon::AutoProtect::set |
( |
const void * | object | ) |
|
|
protected |
Set guard to mutex lock a new object.
If a lock is currently held, it is released.
- Parameters
-
◆ object
const void* ucommon::AutoProtect::object |
|
protected |
The documentation for this class was generated from the following file:
- /builddir/build/BUILD/ucommon-7.0.0/inc/ucommon/thread.h