11 #if !defined (__ACE_INLINE__) 34 , state_(STATE_UNINITIALIZED)
38 #ifdef OPENDDS_REACTOR_TASK_ASYNC
39 , use_async_send_(useAsyncSend)
42 , thread_status_manager_(0)
44 ACE_UNUSED_ARG(useAsyncSend);
63 #if defined (ACE_HAS_WIN32_OVERLAPPED_IO) || defined (ACE_HAS_AIO_CALLS) 93 #ifdef OPENDDS_REACTOR_TASK_ASYNC 115 if (
activate(THR_NEW_LWP | THR_JOINABLE, 1) != 0) {
117 "(%P|%t) ERROR: ReactorTask Failed to activate " 152 "(%P|%t) ERROR: Failed to change the reactor's owner().\n"));
180 ACE_UNUSED_ARG(flags);
209 #if defined (ACE_HAS_WIN32_OVERLAPPED_IO) || defined (ACE_HAS_AIO_CALLS) ConditionVariableType condition_
void thread_status_interval(const TimeDuration &thread_status_interval)
ACE_Timer_Heap_T< ACE_Event_Handler *, ACE_Event_Handler_Handle_Timeout_Upcall, ACE_SYNCH_RECURSIVE_MUTEX, MonotonicClock > TimerQueueType
virtual int close(u_long flags=0)
#define OPENDDS_ASSERT(C)
ThreadStatusManager * thread_status_manager_
virtual ACE_HANDLE get_handle(void) const=0
ACE_Proactor_Impl * implementation(void) const
virtual ACE_HANDLE get_handle(void) const
ACE_Guard< ACE_Thread_Mutex > lock_
bool update_thread_status() const
ReactorInterceptor_rch interceptor_
int register_handler(ACE_Event_Handler *event_handler, ACE_Reactor_Mask mask)
int remove_handler(ACE_HANDLE handle, ACE_Reactor_Mask masks)
int thr_sigsetmask(int how, const sigset_t *nsm, sigset_t *osm)
void wait_for_startup_i() const
ACE_Thread_Manager * thr_mgr(void) const
static ACE_Thread_Manager * instance(void)
int end_reactor_event_loop(void)
virtual void _remove_ref()
virtual ACE_Reactor * reactor() const
virtual ACE_Reactor * reactor(void) const
bool notify_all()
Unblock all of the threads waiting on this condition.
ACE_thread_t reactor_owner_
CvStatus wait(ThreadStatusManager &thread_status_manager)
Block until thread is woken up.
TimerQueueType * timer_queue_
ReactorTask(bool useAsyncSend)
#define OPENDDS_END_VERSIONED_NAMESPACE_DECL
int thr_self(ACE_hthread_t &)
#define ACE_ERROR_RETURN(X, Y)
virtual int activate(long flags=THR_NEW_LWP|THR_JOINABLE|THR_INHERIT_SCHED, int n_threads=1, int force_active=0, long priority=ACE_DEFAULT_THREAD_PRIORITY, int grp_id=-1, ACE_Task_Base *task=0, ACE_hthread_t thread_handles[]=0, void *stack[]=0, size_t stack_size[]=0, ACE_thread_t thread_ids[]=0, const char *thr_name[]=0)
#define TheServiceParticipant
int open_reactor_task(void *, ThreadStatusManager *thread_status_manager=0, const String &name="")
int sigfillset(sigset_t *s)
The Internal API and Implementation of OpenDDS.
int owner(ACE_thread_t new_owner, ACE_thread_t *old_owner=0)
int timer_queue(ACE_Timer_Queue *tq)
int run_reactor_event_loop(REACTOR_EVENT_HOOK=0)