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.).
#include <ace/Synch_T.h>
template<class ACE_LOCKING_MECHANISM> class ACE_Lock_Adapter : public ACE_Lock {
public:
typedef ACE_LOCKING_MECHANISM ACE_LOCK;
ACE_Lock_Adapter (ACE_LOCKING_MECHANISM &lock);
ACE_Lock_Adapter (void);
virtual ~ACE_Lock_Adapter (void);
virtual int acquire (void);
virtual int tryacquire (void);
virtual int release (void);
virtual int acquire_read (void);
virtual int acquire_write (void);
virtual int tryacquire_read (void);
virtual int tryacquire_write (void);
virtual int remove (void);
private:
ACE_LOCKING_MECHANISM *lock_;
int delete_lock_;
};
ACE_Lock_Adapter (ACE_LOCKING_MECHANISM &lock);
lock
.
ACE_Lock_Adapter (void);
virtual ~ACE_Lock_Adapter (void);
lock_
was not passed in by the user, it will be
deleted.
virtual int acquire (void);
virtual int tryacquire (void);
virtual int release (void);
virtual int acquire_read (void);
acquire
.
virtual int acquire_write (void);
acquire
.
virtual int tryacquire_read (void);
acquire
.
virtual int tryacquire_write (void);
acquire
.
virtual int remove (void);