ACE
6.1.0
|
This is an adapter that allows applications to transparently combine the ACE_Lock abstract base class (which contains pure virtual methods) with any of the other concrete ACE synchronization classes (e.g., ACE_Mutex, ACE_Semaphore, ACE_RW_Mutex, etc.). More...
#include <Lock_Adapter_T.h>
Public Types | |
typedef ACE_LOCKING_MECHANISM | ACE_LOCK |
Public Member Functions | |
ACE_Lock_Adapter (ACE_LOCKING_MECHANISM &lock) | |
Constructor. All locking requests will be forwarded to lock. | |
ACE_Lock_Adapter (void) | |
virtual | ~ACE_Lock_Adapter (void) |
virtual int | acquire (void) |
Block the thread until the lock is acquired. | |
virtual int | tryacquire (void) |
Conditionally acquire the lock (i.e., won't block). | |
virtual int | release (void) |
Release the lock. | |
virtual int | acquire_read (void) |
virtual int | acquire_write (void) |
virtual int | tryacquire_read (void) |
virtual int | tryacquire_write (void) |
virtual int | tryacquire_write_upgrade (void) |
virtual int | remove (void) |
Explicitly destroy the lock. | |
Private Attributes | |
ACE_LOCKING_MECHANISM * | lock_ |
The concrete locking mechanism that all the methods delegate to. | |
bool | delete_lock_ |
This is an adapter that allows applications to transparently combine the ACE_Lock abstract base class (which contains pure virtual methods) with any of the other concrete ACE synchronization classes (e.g., ACE_Mutex, ACE_Semaphore, ACE_RW_Mutex, etc.).
This class uses a form of the Adapter pattern.
typedef ACE_LOCKING_MECHANISM ACE_Lock_Adapter< ACE_LOCKING_MECHANISM >::ACE_LOCK |
ACE_Lock_Adapter< ACE_LOCKING_MECHANISM >::ACE_Lock_Adapter | ( | ACE_LOCKING_MECHANISM & | lock | ) | [inline] |
Constructor. All locking requests will be forwarded to lock.
ACE_Lock_Adapter< ACE_LOCKING_MECHANISM >::ACE_Lock_Adapter | ( | void | ) | [inline] |
Constructor. Since no lock is provided by the user, one will be created internally.
ACE_Lock_Adapter< ACE_LOCKING_MECHANISM >::~ACE_Lock_Adapter | ( | void | ) | [virtual] |
Destructor. If lock_
was not passed in by the user, it will be deleted.
int ACE_Lock_Adapter< ACE_LOCKING_MECHANISM >::acquire | ( | void | ) | [virtual] |
Block the thread until the lock is acquired.
Implements ACE_Lock.
int ACE_Lock_Adapter< ACE_LOCKING_MECHANISM >::acquire_read | ( | void | ) | [virtual] |
int ACE_Lock_Adapter< ACE_LOCKING_MECHANISM >::acquire_write | ( | void | ) | [virtual] |
int ACE_Lock_Adapter< ACE_LOCKING_MECHANISM >::release | ( | void | ) | [virtual] |
Release the lock.
Implements ACE_Lock.
int ACE_Lock_Adapter< ACE_LOCKING_MECHANISM >::remove | ( | void | ) | [virtual] |
Explicitly destroy the lock.
Implements ACE_Lock.
int ACE_Lock_Adapter< ACE_LOCKING_MECHANISM >::tryacquire | ( | void | ) | [virtual] |
Conditionally acquire the lock (i.e., won't block).
Implements ACE_Lock.
int ACE_Lock_Adapter< ACE_LOCKING_MECHANISM >::tryacquire_read | ( | void | ) | [virtual] |
int ACE_Lock_Adapter< ACE_LOCKING_MECHANISM >::tryacquire_write | ( | void | ) | [virtual] |
int ACE_Lock_Adapter< ACE_LOCKING_MECHANISM >::tryacquire_write_upgrade | ( | void | ) | [virtual] |
bool ACE_Lock_Adapter< ACE_LOCKING_MECHANISM >::delete_lock_ [private] |
This flag keep track of whether we are responsible for deleting the lock
ACE_LOCKING_MECHANISM* ACE_Lock_Adapter< ACE_LOCKING_MECHANISM >::lock_ [private] |
The concrete locking mechanism that all the methods delegate to.