|
| | ACE_Thread_Timer_Queue_Adapter (ACE_Thread_Manager *=ACE_Thread_Manager::instance(), TQ *timer_queue=0) |
| |
| virtual | ~ACE_Thread_Timer_Queue_Adapter (void) |
| | Destructor. More...
|
| |
| long | schedule (TYPE handler, const void *act, const ACE_Time_Value &future_time, const ACE_Time_Value &interval=ACE_Time_Value::zero) |
| |
| int | cancel (long timer_id, const void **act=0) |
| |
| virtual int | svc (void) |
| | Runs the dispatching thread. More...
|
| |
| virtual void | deactivate (void) |
| | Inform the dispatching thread that it should terminate. More...
|
| |
| ACE_SYNCH_RECURSIVE_MUTEX & | mutex (void) |
| | Access the locking mechanism, useful for iteration. More...
|
| |
| int | timer_queue (TQ *tq) |
| | Set a user-specified timer queue. More...
|
| |
| TQ * | timer_queue (void) const |
| | Return the current <TQ>. More...
|
| |
| ACE_thread_t | thr_id (void) const |
| | Return the thread id of our active object. More...
|
| |
| virtual int | activate (long flags=THR_NEW_LWP|THR_JOINABLE, 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) |
| |
| | ACE_Task_Base (ACE_Thread_Manager *=0) |
| | Constructor. More...
|
| |
| virtual | ~ACE_Task_Base (void) |
| | Destructor. More...
|
| |
| virtual int | open (void *args=0) |
| | Default ACE_Task open routine. More...
|
| |
| virtual int | close (u_long flags=0) |
| | Default ACE_Task close routine. More...
|
| |
| virtual int | module_closed (void) |
| |
| virtual int | put (ACE_Message_Block *, ACE_Time_Value *=0) |
| | Default ACE_Task put routine. More...
|
| |
| virtual int | wait (void) |
| | Wait for all threads running in a task to exit. More...
|
| |
| virtual int | suspend (void) |
| | Suspend a task. More...
|
| |
| virtual int | resume (void) |
| | Resume a suspended task. More...
|
| |
| int | grp_id (void) const |
| | Get the current group id. More...
|
| |
| void | grp_id (int) |
| | Set the current group id. More...
|
| |
| ACE_Thread_Manager * | thr_mgr (void) const |
| | Get the thread manager associated with this Task. More...
|
| |
| void | thr_mgr (ACE_Thread_Manager *) |
| | Set the thread manager associated with this Task. More...
|
| |
| int | is_reader (void) const |
| | True if queue is a reader, else false. More...
|
| |
| int | is_writer (void) const |
| | True if queue is a writer, else false. More...
|
| |
| size_t | thr_count (void) const |
| |
| ACE_thread_t | last_thread (void) const |
| |
| | ACE_Service_Object (ACE_Reactor *=0) |
| | Constructor. More...
|
| |
| virtual | ~ACE_Service_Object (void) |
| | Destructor. More...
|
| |
| virtual | ~ACE_Event_Handler (void) |
| | Destructor is virtual to enable proper cleanup. More...
|
| |
| virtual ACE_HANDLE | get_handle (void) const |
| | Get the I/O handle. More...
|
| |
| virtual void | set_handle (ACE_HANDLE) |
| | Set the I/O handle. More...
|
| |
| virtual int | priority (void) const |
| |
| virtual void | priority (int priority) |
| | Set the priority of the Event_Handler. More...
|
| |
| virtual int | handle_input (ACE_HANDLE fd=ACE_INVALID_HANDLE) |
| | Called when input events occur (e.g., connection or data). More...
|
| |
| virtual int | handle_output (ACE_HANDLE fd=ACE_INVALID_HANDLE) |
| |
| virtual int | handle_exception (ACE_HANDLE fd=ACE_INVALID_HANDLE) |
| | Called when an exceptional events occur (e.g., SIGURG). More...
|
| |
| virtual int | handle_timeout (const ACE_Time_Value ¤t_time, const void *act=0) |
| |
| virtual int | handle_exit (ACE_Process *) |
| | Called when a process exits. More...
|
| |
| virtual int | handle_close (ACE_HANDLE handle, ACE_Reactor_Mask close_mask) |
| |
| virtual int | handle_signal (int signum, siginfo_t *=0, ucontext_t *=0) |
| |
| virtual int | resume_handler (void) |
| |
| virtual int | handle_qos (ACE_HANDLE=ACE_INVALID_HANDLE) |
| |
| virtual int | handle_group_qos (ACE_HANDLE=ACE_INVALID_HANDLE) |
| |
| virtual void | reactor (ACE_Reactor *reactor) |
| | Set the event demultiplexors. More...
|
| |
| virtual ACE_Reactor * | reactor (void) const |
| | Get the event demultiplexors. More...
|
| |
virtual
ACE_Reactor_Timer_Interface * | reactor_timer_interface (void) const |
| | Get only the reactor's timer related interface. More...
|
| |
| virtual Reference_Count | add_reference (void) |
| | Increment reference count on the handler. More...
|
| |
| virtual Reference_Count | remove_reference (void) |
| | Decrement reference count on the handler. More...
|
| |
| Reference_Counting_Policy & | reference_counting_policy (void) |
| | Current Reference_Counting_Policy. More...
|
| |
| | ACE_Shared_Object (void) |
| | Constructor. More...
|
| |
| virtual | ~ACE_Shared_Object (void) |
| | Destructor. More...
|
| |
| virtual int | init (int argc, ACE_TCHAR *argv[]) |
| | Initializes object when dynamic linking occurs. More...
|
| |
| virtual int | fini (void) |
| | Terminates object when dynamic unlinking occurs. More...
|
| |
| virtual int | info (ACE_TCHAR **info_string, size_t length=0) const |
| | Returns information on a service object. More...
|
| |
template<class TQ, class TYPE = ACE_Event_Handler*>
class ACE_Thread_Timer_Queue_Adapter< TQ, TYPE >
Adapts an ACE timer queue using a separate thread for dispatching.
This implementation uses a separate thread to dispatch the timers. The base queue need not be thread safe; this class takes all the necessary locks.
- Note
- This is a case where template parameters will be useful, but (IMHO) the effort and portability problems discourage their use.