Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members

# TAO_ESF_Busy_Lock_Adapter Class Template Reference

Adapt classes that implement the "busy lock" protocol, to conform to the ACE Lock interface. More...

`#include <ESF_Busy_Lock.h>`

Inheritance diagram for TAO_ESF_Busy_Lock_Adapter:

[legend]
Collaboration diagram for TAO_ESF_Busy_Lock_Adapter:

[legend]
List of all members.

## Public Methods
| TAO_ESF_Busy_Lock_Adapter (Adaptee *adaptee)
| Constructor. More...
The ACE_Lock methods
Check the documentation in ace/Synch.h for details.
int | remove (void)
int | acquire (void)
int | tryacquire (void)
int | release (void)
int | acquire_read (void)
int | acquire_write (void)
int | tryacquire_read (void)
int | tryacquire_write (void)
## Private Attributes
Adaptee * | adaptee_

## Detailed Description

### template<class Adaptee>
class TAO_ESF_Busy_Lock_Adapter< Adaptee >

Adapt classes that implement the "busy lock" protocol, to conform to the ACE Lock interface.

The ACE Lock interface allows us to use any mutex-like object with the ACE synchronization components (such as guards, Lock_Adapter, etc.). One of the synchronization protocols used in the event services uses the following protocol:

- To acquire the lock the `busy` method of the object is invoked.
- To release the lock the `idle` method of the object is invoked.
- Any changes performed while the lock is held are delayed until all the locks are released, i.e. the last call to `idle` executes the changes.

## Constructor & Destructor Documentation

template<class T>
ACE_INLINE TAO_ESF_Busy_Lock_Adapter< T >::TAO_ESF_Busy_Lock_Adapter | ( | T * | adaptee | ) |

| Constructor.

## Member Function Documentation

template<class T>
int TAO_ESF_Busy_Lock_Adapter< T >::acquire | ( | void |  | ) |

template<class T>
int TAO_ESF_Busy_Lock_Adapter< T >::acquire_read | ( | void |  | ) |

template<class T>
int TAO_ESF_Busy_Lock_Adapter< T >::acquire_write | ( | void |  | ) |

template<class T>
int TAO_ESF_Busy_Lock_Adapter< T >::release | ( | void |  | ) |

template<class T>
int TAO_ESF_Busy_Lock_Adapter< T >::remove | ( | void |  | ) |

template<class T>
int TAO_ESF_Busy_Lock_Adapter< T >::tryacquire | ( | void |  | ) |

template<class T>
int TAO_ESF_Busy_Lock_Adapter< T >::tryacquire_read | ( | void |  | ) |

template<class T>
int TAO_ESF_Busy_Lock_Adapter< T >::tryacquire_write | ( | void |  | ) |

## Member Data Documentation

template<class Adaptee>
Adaptee* TAO_ESF_Busy_Lock_Adapter::adaptee_`[private]`

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

- ESF_Busy_Lock.h
- ESF_Busy_Lock.cpp
- ESF_Busy_Lock.i