ACE_Async_Timer_Queue_Adapter< TQ > Class Template ReferenceAdapts an ACE timer queue to be driven asynchronously using signals. More...
Inheritance diagram for ACE_Async_Timer_Queue_Adapter< TQ >:
![]()
Collaboration diagram for ACE_Async_Timer_Queue_Adapter< TQ >:
![]()
Detailed Descriptiontemplate<class TQ>
Adapts an ACE timer queue to be driven asynchronously using signals.
|
typedef TQ ACE_Async_Timer_Queue_Adapter< TQ >::TIMER_QUEUE |
ACE_Async_Timer_Queue_Adapter< TQ >::ACE_Async_Timer_Queue_Adapter | ( | ACE_Sig_Set * | mask = 0 |
) | [inline] |
Constructor.
Register the SIGALRM handler. If mask == 0 then block all signals when SIGALRM
is run. Otherwise, just block the signals indicated in mask.
long ACE_Async_Timer_Queue_Adapter< TQ >::schedule | ( | ACE_Event_Handler * | type, | |
const void * | act, | |||
const ACE_Time_Value & | future_time, | |||
const ACE_Time_Value & | interval = ACE_Time_Value::zero | |||
) | [inline] |
Schedule the timer according to the semantics of the ACE_Timer_List. This timer gets dispatched via a signal, rather than by a user calling expire(). Note that interval timers are not implemented yet.
int ACE_Async_Timer_Queue_Adapter< TQ >::cancel | ( | long | timer_id, | |
const void ** | act = 0 | |||
) | [inline] |
Cancel the timer_id and pass back the act if an address is passed in.
int ACE_Async_Timer_Queue_Adapter< TQ >::expire | ( | void | ) | [inline] |
Dispatch all timers with expiry time at or before the current time. Returns the number of timers expired.
ACE_BEGIN_VERSIONED_NAMESPACE_DECL TQ & ACE_Async_Timer_Queue_Adapter< TQ >::timer_queue | ( | void | ) | [inline] |
Return a reference to the underlying timer queue.
int ACE_Async_Timer_Queue_Adapter< TQ >::schedule_ualarm | ( | void | ) | [inline, private, virtual] |
Perform the logic to compute the new ualarm(2) setting.
int ACE_Async_Timer_Queue_Adapter< TQ >::handle_signal | ( | int | signum, | |
siginfo_t * | , | |||
ucontext_t * | ||||
) | [inline, private, virtual] |
ACE_Sig_Handler ACE_Async_Timer_Queue_Adapter< TQ >::sig_handler_ [private] |
Handler for the SIGALRM
signal, so that we can access our state without requiring any global variables.
TQ ACE_Async_Timer_Queue_Adapter< TQ >::timer_queue_ [private] |
Implementation of the timer queue (e.g., ACE_Timer_List, ACE_Timer_Heap, etc.).
ACE_Sig_Set ACE_Async_Timer_Queue_Adapter< TQ >::mask_ [private] |
Mask of signals to be blocked when we're servicing SIGALRM
.