TAO 4.0.0
Loading...
Searching...
No Matches
Public Member Functions | List of all members
TAO_Exclusive_TMS Class Reference

#include <Exclusive_TMS.h>

Inheritance diagram for TAO_Exclusive_TMS:
Inheritance graph
[legend]
Collaboration diagram for TAO_Exclusive_TMS:
Collaboration graph
[legend]

Public Member Functions

 TAO_Exclusive_TMS (TAO_Transport *transport)
 Constructor.
 
virtual ~TAO_Exclusive_TMS ()
 Destructor.
 
- Public Member Functions inherited from TAO_Transport_Mux_Strategy
 TAO_Transport_Mux_Strategy (TAO_Transport *transport)
 Base class constructor.
 
virtual ~TAO_Transport_Mux_Strategy ()
 Base class destructor.
 

The TAO_Transport_Mux_Strategy overrided methods

Please read the documentation in the TAO_Transport_Mux_Strategy class for details.

CORBA::ULong request_id_generator_
 
CORBA::ULong request_id_
 Request id for the current request.
 
ACE_Intrusive_Auto_Ptr< TAO_Reply_Dispatcherrd_
 
virtual CORBA::ULong request_id ()
 
virtual int bind_dispatcher (CORBA::ULong request_id, ACE_Intrusive_Auto_Ptr< TAO_Reply_Dispatcher > rd)
 
virtual int unbind_dispatcher (CORBA::ULong request_id)
 
virtual int dispatch_reply (TAO_Pluggable_Reply_Params &params)
 
virtual int reply_timed_out (CORBA::ULong request_id)
 
virtual bool idle_after_send ()
 
virtual bool idle_after_reply ()
 
virtual void connection_closed ()
 
virtual bool has_request ()
 

Additional Inherited Members

- Protected Attributes inherited from TAO_Transport_Mux_Strategy
TAO_Transporttransport_
 Cache the transport reference.
 

Detailed Description

Using this strategy only one request can be pending at a time in a connection. This improves performance because the client does not have to demux the reply, and there is less need for synchronization. On the other hand, it does not scale well when you have multiple client threads or asynchronous messaging.

Constructor & Destructor Documentation

◆ TAO_Exclusive_TMS()

TAO_Exclusive_TMS::TAO_Exclusive_TMS ( TAO_Transport * transport)

Constructor.

◆ ~TAO_Exclusive_TMS()

TAO_Exclusive_TMS::~TAO_Exclusive_TMS ( )
virtual

Destructor.

Member Function Documentation

◆ bind_dispatcher()

int TAO_Exclusive_TMS::bind_dispatcher ( CORBA::ULong request_id,
ACE_Intrusive_Auto_Ptr< TAO_Reply_Dispatcher > rd )
virtual

Used to generate a different request_id on each call to request_id().

Implements TAO_Transport_Mux_Strategy.

◆ connection_closed()

void TAO_Exclusive_TMS::connection_closed ( )
virtual

Used to generate a different request_id on each call to request_id().

Implements TAO_Transport_Mux_Strategy.

◆ dispatch_reply()

int TAO_Exclusive_TMS::dispatch_reply ( TAO_Pluggable_Reply_Params & params)
virtual

Used to generate a different request_id on each call to request_id().

Implements TAO_Transport_Mux_Strategy.

◆ has_request()

bool TAO_Exclusive_TMS::has_request ( )
virtual

Used to generate a different request_id on each call to request_id().

Implements TAO_Transport_Mux_Strategy.

◆ idle_after_reply()

bool TAO_Exclusive_TMS::idle_after_reply ( )
virtual

Used to generate a different request_id on each call to request_id().

Implements TAO_Transport_Mux_Strategy.

◆ idle_after_send()

bool TAO_Exclusive_TMS::idle_after_send ( )
virtual

Used to generate a different request_id on each call to request_id().

Implements TAO_Transport_Mux_Strategy.

◆ reply_timed_out()

int TAO_Exclusive_TMS::reply_timed_out ( CORBA::ULong request_id)
virtual

Used to generate a different request_id on each call to request_id().

Implements TAO_Transport_Mux_Strategy.

◆ request_id()

CORBA::ULong TAO_Exclusive_TMS::request_id ( )
virtual

Used to generate a different request_id on each call to request_id().

Implements TAO_Transport_Mux_Strategy.

◆ unbind_dispatcher()

int TAO_Exclusive_TMS::unbind_dispatcher ( CORBA::ULong request_id)
virtual

Used to generate a different request_id on each call to request_id().

Implements TAO_Transport_Mux_Strategy.

Member Data Documentation

◆ rd_

ACE_Intrusive_Auto_Ptr<TAO_Reply_Dispatcher> TAO_Exclusive_TMS::rd_
protected

Reply Dispatcher corresponding to the request. If this is zero we don't have a reply, if it not zero we have one

◆ request_id_

CORBA::ULong TAO_Exclusive_TMS::request_id_
protected

Request id for the current request.

◆ request_id_generator_

CORBA::ULong TAO_Exclusive_TMS::request_id_generator_
protected

Used to generate a different request_id on each call to request_id().


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