Bayonne2 / Common C++ 2 Framework
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Attributes
SemaphoreLock Class Reference

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>

Collaboration diagram for SemaphoreLock:
Collaboration graph
[legend]

Public Member Functions

 SemaphoreLock (Semaphore &_sem)
 Wait for the semaphore. More...
 
 ~SemaphoreLock ()
 Post the semaphore automatically. More...
 

Private Attributes

Semaphoresem
 

Detailed Description

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.

Author
David Sugar dyfet.nosp@m.@gnu.nosp@m..org Semaphore automatic locker for protected access.

Definition at line 837 of file thread.h.

Constructor & Destructor Documentation

SemaphoreLock::SemaphoreLock ( Semaphore _sem)
inline

Wait for the semaphore.

Definition at line 846 of file thread.h.

SemaphoreLock::~SemaphoreLock ( )
inline

Post the semaphore automatically.

Definition at line 852 of file thread.h.

Field Documentation

Semaphore& SemaphoreLock::sem
private

Definition at line 840 of file thread.h.


The documentation for this class was generated from the following file: