OpenDDS
Snapshot(2023/04/07-19:43)
|
strategy to construct ReactorSynch implementations of ThreadSynch. More...
#include <ReactorSynchStrategy.h>
Public Member Functions | |
ReactorSynchStrategy (TransportSendStrategy *strategy, ACE_Reactor *reactor) | |
virtual | ~ReactorSynchStrategy () |
virtual ThreadSynch * | create_synch_object (ThreadSynchResource *synch_resource, long priority=0, long scheduler=0) |
![]() | |
virtual | ~ThreadSynchStrategy () |
![]() | |
virtual | ~RcObject () |
virtual void | _add_ref () |
virtual void | _remove_ref () |
long | ref_count () const |
WeakObject * | _get_weak_object () const |
Private Attributes | |
TransportSendStrategy * | strategy_ |
ACE_Reactor * | reactor_ |
Additional Inherited Members | |
![]() | |
ThreadSynchStrategy () | |
![]() | |
RcObject () | |
strategy to construct ReactorSynch implementations of ThreadSynch.
This class is used as a factory for ReactorSynch objects that can be used to scheduled queued output for processing on a reactor. The initial implementation will share the Transport reactor for all of the sending and receiving processing to be performed. If the reactor is upgraded to a thread pool reactor, then this processing can be split between those threads using the default leader-follower dispatching.
The usage idiom for ThreadSynchStrategy ensures that his object will have valid raw pointer values during its lifetime.
Definition at line 39 of file ReactorSynchStrategy.h.
ACE_INLINE OpenDDS::DCPS::ReactorSynchStrategy::ReactorSynchStrategy | ( | TransportSendStrategy * | strategy, |
ACE_Reactor * | reactor | ||
) |
Construct with strategy, reactor, and handle to configure the ReactorSynch with.
Definition at line 11 of file ReactorSynchStrategy.inl.
References DBG_ENTRY_LVL.
|
virtual |
|
virtual |
Implements OpenDDS::DCPS::ThreadSynchStrategy.
Definition at line 22 of file ReactorSynchStrategy.cpp.
References DBG_ENTRY_LVL, reactor_, and strategy_.
|
private |
Raw pointer to reactor. This is ok since the strategy will pass the pointer on to the ReactorSynch, which is guaranteed to span the lifetime of both the strategy and the reactor.
Definition at line 63 of file ReactorSynchStrategy.h.
Referenced by create_synch_object().
|
private |
Raw pointer to the strategy. This is the strategy that contains the TreadSynch (which will receive this pointer) so the lifetime is assured.
Definition at line 58 of file ReactorSynchStrategy.h.
Referenced by create_synch_object().