GNU CommonC++
|
The SemaphoreLock class is used to protect a section of code through a semaphore so that only x instances of the member function may execute concurrently. More...
#include <thread.h>
Public Member Functions | |
SemaphoreLock (Semaphore &_sem) | |
Wait for the semaphore. | |
~SemaphoreLock () | |
Post the semaphore automatically. |
The SemaphoreLock class is used to protect a section of code through a semaphore so that only x instances of the member function may execute concurrently.
A common use is
void func_to_protect() { SemaphoreLock lock(semaphore); ... operation ... }
NOTE: do not declare variable as "SemaohoreLock (semaphore)", the mutex will be released at statement end.
ost::SemaphoreLock::SemaphoreLock | ( | Semaphore & | _sem | ) | [inline] |
Wait for the semaphore.
ost::SemaphoreLock::~SemaphoreLock | ( | ) | [inline] |
Post the semaphore automatically.