#include <Synch_T.h>
Inheritance diagram for ACE_Reverse_Lock


Public Types | |
| typedef ACE_LOCKING_MECHANISM | ACE_LOCK |
Public Methods | |
| ACE_Reverse_Lock (ACE_LOCKING_MECHANISM &lock, ACE_Acquire_Method::METHOD_TYPE acquire_method = ACE_Acquire_Method::ACE_REGULAR) | |
| Constructor. All locking requests will be forwarded to <lock>. | |
| virtual | ~ACE_Reverse_Lock (void) |
| Destructor. If <lock_> was not passed in by the user, it will be deleted. | |
| virtual int | acquire (void) |
| Release the lock. | |
| virtual int | tryacquire (void) |
| Release the lock. | |
| virtual int | release (void) |
| Acquire the lock. | |
| virtual int | acquire_read (void) |
| Release the lock. | |
| virtual int | acquire_write (void) |
| Release the lock. | |
| virtual int | tryacquire_read (void) |
| Release the lock. | |
| virtual int | tryacquire_write (void) |
| Release the lock. | |
| virtual int | tryacquire_write_upgrade (void) |
| Release the lock. | |
| virtual int | remove (void) |
| Explicitly destroy the lock. | |
Private Attributes | |
| ACE_LOCKING_MECHANISM& | lock_ |
| The concrete locking mechanism that all the methods delegate to. | |
| ACE_Acquire_Method::METHOD_TYPE | acquire_method_ |
| This indicates what kind of acquire method will be called. | |
This is an interesting adapter class that changes a lock into a reverse lock, i.e., on this class calls <release> on the lock, and <release> on this class calls on the lock. One motivation for this class is when we temporarily want to release a lock (which we have already acquired) but then reacquire it soon after. An alternative design would be to add a Anti_Guard or Reverse_Guard class which would <release> on construction and destruction. However, there are *many* varieties of the Guard class and this design choice would lead to at least 6 new classes. One new ACE_Reverse_Lock class seemed more reasonable.
|
|||
|
|
|
||||||
|
Constructor. All locking requests will be forwarded to <lock>.
|
|
||||
|
Destructor. If <lock_> was not passed in by the user, it will be deleted.
|
|
||||
|
Release the lock.
Reimplemented from ACE_Lock. |
|
||||
|
Release the lock.
Reimplemented from ACE_Lock. |
|
||||
|
Release the lock.
Reimplemented from ACE_Lock. |
|
||||
|
Acquire the lock.
Reimplemented from ACE_Lock. |
|
||||
|
Explicitly destroy the lock.
Reimplemented from ACE_Lock. |
|
||||
|
Release the lock.
Reimplemented from ACE_Lock. |
|
||||
|
Release the lock.
Reimplemented from ACE_Lock. |
|
||||
|
Release the lock.
Reimplemented from ACE_Lock. |
|
||||
|
Release the lock.
Reimplemented from ACE_Lock. |
|
|||
|
This indicates what kind of acquire method will be called.
|
|
|||
|
The concrete locking mechanism that all the methods delegate to.
|
1.2.3 written by Dimitri van Heesch,
© 1997-2000