Primary interface for application message processing, as well as input and output message queueing.
More...
|
| | ACE_Task (ACE_Thread_Manager *thr_mgr=0, ACE_Message_Queue< ACE_SYNCH_USE, TIME_POLICY > *mq=0) |
| |
| virtual | ~ACE_Task (void) |
| | Destructor. More...
|
| |
| ACE_Message_Queue< ACE_SYNCH_USE, TIME_POLICY > * | msg_queue (void) |
| | Gets the message queue associated with this task. More...
|
| |
| void | msg_queue (ACE_Message_Queue< ACE_SYNCH_USE, TIME_POLICY > *) |
| | Sets the message queue associated with this task. More...
|
| |
| ACE_Time_Value_T< TIME_POLICY > | gettimeofday (void) const |
| |
| void | set_time_policy (TIME_POLICY const &time_policy) |
| |
| int | putq (ACE_Message_Block *, ACE_Time_Value *timeout=0) |
| |
| int | getq (ACE_Message_Block *&mb, ACE_Time_Value *timeout=0) |
| |
| int | ungetq (ACE_Message_Block *, ACE_Time_Value *timeout=0) |
| |
| int | reply (ACE_Message_Block *mb, ACE_Time_Value *tv=0) |
| |
| int | put_next (ACE_Message_Block *msg, ACE_Time_Value *timeout=0) |
| |
| const ACE_TCHAR * | name (void) const |
| |
| ACE_Task< ACE_SYNCH_USE, TIME_POLICY > * | next (void) |
| | Get next Task pointer. More...
|
| |
| void | next (ACE_Task< ACE_SYNCH_USE, TIME_POLICY > *) |
| | Set next Task pointer. More...
|
| |
| ACE_Task< ACE_SYNCH_USE, TIME_POLICY > * | sibling (void) |
| |
| ACE_Module< ACE_SYNCH_USE, TIME_POLICY > * | module (void) const |
| | Return the Task's Module if there is one, else returns 0. More...
|
| |
| int | flush (u_long flag=ACE_Task_Flags::ACE_FLUSHALL) |
| |
| void | water_marks (ACE_IO_Cntl_Msg::ACE_IO_Cntl_Cmds, size_t) |
| | Manipulate watermarks. More...
|
| |
| void | dump (void) const |
| | Dump the state of an object. More...
|
| |
| | 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 | svc (void) |
| | Run by a daemon thread to handle deferred processing. More...
|
| |
| 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) |
| |
| 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...
|
| |
|
| enum | {
LO_PRIORITY = 0,
HI_PRIORITY = 10,
NULL_MASK = 0,
READ_MASK = (1 << 0),
WRITE_MASK = (1 << 1),
EXCEPT_MASK = (1 << 2),
ACCEPT_MASK = (1 << 3),
CONNECT_MASK = (1 << 4),
TIMER_MASK = (1 << 5),
QOS_MASK = (1 << 6),
GROUP_QOS_MASK = (1 << 7),
SIGNAL_MASK = (1 << 8),
ALL_EVENTS_MASK,
RWE_MASK,
DONT_CALL = (1 << 9)
} |
| |
| enum | { ACE_EVENT_HANDLER_NOT_RESUMED = -1,
ACE_REACTOR_RESUMES_HANDLER = 0,
ACE_APPLICATION_RESUMES_HANDLER
} |
| |
| typedef long | Reference_Count |
| | Reference count type. More...
|
| |
| static ACE_THR_FUNC_RETURN | svc_run (void *) |
| | Routine that runs the service routine as a daemon thread. More...
|
| |
| static void | cleanup (void *object, void *params) |
| |
| static ACE_THR_FUNC_RETURN | read_adapter (void *event_handler) |
| |
| static int | register_stdin_handler (ACE_Event_Handler *eh, ACE_Reactor *reactor, ACE_Thread_Manager *thr_mgr, int flags=THR_DETACHED) |
| |
| static int | remove_stdin_handler (ACE_Reactor *reactor, ACE_Thread_Manager *thr_mgr) |
| | Performs the inverse of the register_stdin_handler() method. More...
|
| |
| typedef ACE_Atomic_Op< ACE_SYNCH_MUTEX, Reference_Count > | Atomic_Reference_Count |
| | Typedef for implementation of reference counting. More...
|
| |
| | ACE_Event_Handler (ACE_Reactor *=0, int priority=ACE_Event_Handler::LO_PRIORITY) |
| | Force ACE_Event_Handler to be an abstract base class. More...
|
| |
| size_t | thr_count_ |
| |
| ACE_Thread_Manager * | thr_mgr_ |
| | Multi-threading manager. More...
|
| |
| u_long | flags_ |
| | ACE_Task flags. More...
|
| |
| int | grp_id_ |
| | This maintains the group id of the Task. More...
|
| |
| ACE_thread_t | last_thread_id_ |
| | Holds the thread ID of the last thread to exit svc() in this object. More...
|
| |
| Atomic_Reference_Count | reference_count_ |
| | Reference count. More...
|
| |
template<ACE_SYNCH_DECL, class TIME_POLICY = ACE_System_Time_Policy>
class ACE_Task< ACE_SYNCH_DECL, TIME_POLICY >
Primary interface for application message processing, as well as input and output message queueing.
This class serves as the basis for passive and active objects in ACE.