#include <EC_ProxyConsumer.h>
Public Member Functions | |
TAO_EC_ProxyPushConsumer_Guard (ACE_Lock *lock, CORBA::ULong &refcount, TAO_EC_Event_Channel_Base *ec, TAO_EC_ProxyPushConsumer *proxy) | |
Constructor. | |
~TAO_EC_ProxyPushConsumer_Guard (void) | |
Destructor. | |
bool | locked (void) const |
Returns true if the reference count successfully acquired. | |
Public Attributes | |
TAO_EC_Supplier_Filter * | filter |
Private Attributes | |
ACE_Lock * | lock_ |
The lock used to protect the reference count. | |
CORBA::ULong & | refcount_ |
The reference count. | |
TAO_EC_Event_Channel_Base * | event_channel_ |
The event channel used to destroy the proxy. | |
TAO_EC_ProxyPushConsumer * | proxy_ |
The proxy whose lifetime is controlled by the reference count. | |
bool | locked_ |
This is a helper class used in the implementation of ProxyPushConumer. It provides a Guard mechanism to increment the reference count on the proxy and its filter, eliminating the need to hold mutexes during long operations.
TAO_EC_ProxyPushConsumer_Guard::TAO_EC_ProxyPushConsumer_Guard | ( | ACE_Lock * | lock, | |
CORBA::ULong & | refcount, | |||
TAO_EC_Event_Channel_Base * | ec, | |||
TAO_EC_ProxyPushConsumer * | proxy | |||
) |
Constructor.
TAO_EC_ProxyPushConsumer_Guard::~TAO_EC_ProxyPushConsumer_Guard | ( | void | ) |
Destructor.
bool TAO_EC_ProxyPushConsumer_Guard::locked | ( | void | ) | const |
Returns true if the reference count successfully acquired.
The event channel used to destroy the proxy.
ACE_Lock* TAO_EC_ProxyPushConsumer_Guard::lock_ [private] |
The lock used to protect the reference count.
bool TAO_EC_ProxyPushConsumer_Guard::locked_ [private] |
This flag is set to true if the reference count was successfully acquired.
The proxy whose lifetime is controlled by the reference count.
The reference count.