57 const bool is_safe_to_execute = is_owner && is_not_processing && is_empty;
64 command->set_reactor(local_reactor);
73 local_reactor->
notify(
this);
96 for (Queue::const_iterator pos = cq.begin(), limit = cq.end(); pos != limit; ++pos) {
124 if (
reactor()->register_handler(io_handle_, event_handler_, mask_) != 0) {
127 "(%P|%t) ERROR: RegisterHandler::execute: failed to register handler for socket %d\n",
135 if (
reactor()->remove_handler(io_handle_, mask_) != 0) {
138 "(%P|%t) ERROR: UnregisterHandler::execute: failed to remove handler for socket %d\n",
virtual bool reactor_is_shut_down() const =0
CommandPtr execute_or_enqueue(CommandPtr command)
#define OPENDDS_ASSERT(C)
virtual ACE_Reactor * reactor() const
void process_command_queue_i(ACE_Guard< ACE_Thread_Mutex > &guard)
int notify(ACE_Event_Handler *event_handler=0, ACE_Reactor_Mask masks=ACE_Event_Handler::EXCEPT_MASK, ACE_Time_Value *timeout=0)
static ACE_thread_t self(void)
int thr_equal(ACE_thread_t t1, ACE_thread_t t2)
virtual ACE_Reactor * reactor(void) const
const ACE_Reactor * reactor() const
int handle_exception(ACE_HANDLE)
virtual ~ReactorInterceptor()
OpenDDS_Dcps_Export LogLevel log_level
#define OPENDDS_END_VERSIONED_NAMESPACE_DECL
#define TheServiceParticipant
The Internal API and Implementation of OpenDDS.
ReactorInterceptor(ACE_Reactor *reactor, ACE_thread_t owner)