Main Page Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members Related Pages

# TAO_Object_Adapter::Non_Servant_Upcall Class Reference

This class helps us with a recursive thread lock without using a recursive thread lock. Non_Servant_Upcall has a magic constructor and destructor. We unlock the Object_Adapter lock for the duration of the non-servant (i.e., adapter activator and servant activator) upcalls; reacquiring once the upcalls complete. Even though we are releasing the lock, other threads will not be able to make progress since <Object_Adapter::non_servant_upcall_in_progress_> has been set. More...

`#include <Object_Adapter.h>`

Collaboration diagram for TAO_Object_Adapter::Non_Servant_Upcall:

[legend]
List of all members.

## Public Methods
| Non_Servant_Upcall (TAO_POA &poa)
| Constructor. More...
| ~Non_Servant_Upcall (void)
| Destructor. More...
TAO_POA & | poa (void) const
## Protected Attributes
TAO_Object_Adapter & | object_adapter_
TAO_POA & | poa_

## Detailed Description

This class helps us with a recursive thread lock without using a recursive thread lock. Non_Servant_Upcall has a magic constructor and destructor. We unlock the Object_Adapter lock for the duration of the non-servant (i.e., adapter activator and servant activator) upcalls; reacquiring once the upcalls complete. Even though we are releasing the lock, other threads will not be able to make progress since <Object_Adapter::non_servant_upcall_in_progress_> has been set.

## Constructor & Destructor Documentation

TAO_Object_Adapter::Non_Servant_Upcall::Non_Servant_Upcall | ( | TAO_POA & | poa | ) |

| Constructor.

TAO_Object_Adapter::Non_Servant_Upcall::~Non_Servant_Upcall | ( | void |  | ) |

| Destructor.

## Member Function Documentation

ACE_INLINE TAO_POA & TAO_Object_Adapter::Non_Servant_Upcall::poa | ( | void |  | ) | const

## Member Data Documentation

TAO_Object_Adapter& TAO_Object_Adapter::Non_Servant_Upcall::object_adapter_`[protected]`

TAO_POA& TAO_Object_Adapter::Non_Servant_Upcall::poa_`[protected]`

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

- Object_Adapter.h
- Object_Adapter.cpp
- Object_Adapter.i