| 
 Public Types | 
typedef ACE_Timer_Queue_T< 
 ACE_Handler *, ACE_Proactor_Handle_Timeout_Upcall, 
 ACE_SYNCH_RECURSIVE_MUTEX >  | TIMER_QUEUE | 
|   | Public type.  
  | 
| typedef int(*  | PROACTOR_EVENT_HOOK )(ACE_Proactor *) | 
 Public Member Functions | 
|   | ACE_Proactor (ACE_Proactor_Impl *implementation=0, int delete_implementation=0, TIMER_QUEUE *tq=0) | 
| virtual  | ~ACE_Proactor (void) | 
|   | Virtual destruction.  
  | 
| virtual int  | close (void) | 
|   | Close the associated ACE_Proactor_Impl implementation object.  
  | 
| virtual int  | proactor_run_event_loop (PROACTOR_EVENT_HOOK=0) | 
| virtual int  | proactor_run_event_loop (ACE_Time_Value &tv, PROACTOR_EVENT_HOOK=0) | 
| virtual int  | proactor_end_event_loop (void) | 
| virtual int  | proactor_event_loop_done (void) | 
|   | Report if the ACE_Proactor event loop is finished.  
  | 
| virtual int  | proactor_reset_event_loop (void) | 
| virtual int  | register_handle (ACE_HANDLE handle, const void *completion_key) | 
| virtual long  | schedule_timer (ACE_Handler &handler, const void *act, const ACE_Time_Value &time) | 
| virtual long  | schedule_repeating_timer (ACE_Handler &handler, const void *act, const ACE_Time_Value &interval) | 
| virtual long  | schedule_timer (ACE_Handler &handler, const void *act, const ACE_Time_Value &time, const ACE_Time_Value &interval) | 
| virtual int  | cancel_timer (ACE_Handler &handler, int dont_call_handle_close=1) | 
| virtual int  | cancel_timer (long timer_id, const void **act=0, int dont_call_handle_close=1) | 
| virtual int  | handle_events (ACE_Time_Value &wait_time) | 
| virtual int  | handle_events (void) | 
| int  | wake_up_dispatch_threads (void) | 
|   | Add wakeup dispatch threads (reinit).  
  | 
| int  | close_dispatch_threads (int wait) | 
|   | Close all dispatch threads.  
  | 
| size_t  | number_of_threads (void) const  | 
|   | Get number of thread used as a parameter to CreatIoCompletionPort.  
  | 
| void  | number_of_threads (size_t threads) | 
|   | Set number of thread used as a parameter to CreatIoCompletionPort.  
  | 
| TIMER_QUEUE *  | timer_queue (void) const  | 
|   | Get timer queue.  
  | 
| void  | timer_queue (TIMER_QUEUE *timer_queue) | 
|   | Set timer queue.  
  | 
| virtual ACE_HANDLE  | get_handle (void) const  | 
| virtual ACE_Proactor_Impl *  | implementation (void) const  | 
|   | Get the implementation class.  
  | 
| virtual ACE_Asynch_Read_Stream_Impl *  | create_asynch_read_stream (void) | 
| virtual ACE_Asynch_Write_Stream_Impl *  | create_asynch_write_stream (void) | 
| virtual ACE_Asynch_Read_File_Impl *  | create_asynch_read_file (void) | 
| virtual ACE_Asynch_Write_File_Impl *  | create_asynch_write_file (void) | 
| virtual ACE_Asynch_Accept_Impl *  | create_asynch_accept (void) | 
|   | Create the correct implementation class for doing Asynch_Accept.  
  | 
| virtual ACE_Asynch_Connect_Impl *  | create_asynch_connect (void) | 
|   | Create the correct implementation class for doing Asynch_Connect.  
  | 
| virtual ACE_Asynch_Transmit_File_Impl *  | create_asynch_transmit_file (void) | 
| virtual ACE_Asynch_Read_Dgram_Impl *  | create_asynch_read_dgram (void) | 
| virtual ACE_Asynch_Write_Dgram_Impl *  | create_asynch_write_dgram (void) | 
| virtual ACE_Asynch_Read_Stream_Result_Impl *  | create_asynch_read_stream_result (ACE_Handler::Proxy_Ptr &handler_proxy, ACE_HANDLE handle, ACE_Message_Block &message_block, u_long bytes_to_read, const void *act, ACE_HANDLE event=ACE_INVALID_HANDLE, int priority=0, int signal_number=ACE_SIGRTMIN) | 
| virtual ACE_Asynch_Write_Stream_Result_Impl *  | create_asynch_write_stream_result (ACE_Handler::Proxy_Ptr &handler_proxy, ACE_HANDLE handle, ACE_Message_Block &message_block, u_long bytes_to_write, const void *act, ACE_HANDLE event=ACE_INVALID_HANDLE, int priority=0, int signal_number=ACE_SIGRTMIN) | 
| virtual ACE_Asynch_Read_File_Result_Impl *  | create_asynch_read_file_result (ACE_Handler::Proxy_Ptr &handler_proxy, ACE_HANDLE handle, ACE_Message_Block &message_block, u_long bytes_to_read, const void *act, u_long offset, u_long offset_high, ACE_HANDLE event=ACE_INVALID_HANDLE, int priority=0, int signal_number=ACE_SIGRTMIN) | 
| virtual ACE_Asynch_Write_File_Result_Impl *  | create_asynch_write_file_result (ACE_Handler::Proxy_Ptr &handler_proxy, ACE_HANDLE handle, ACE_Message_Block &message_block, u_long bytes_to_write, const void *act, u_long offset, u_long offset_high, ACE_HANDLE event=ACE_INVALID_HANDLE, int priority=0, int signal_number=ACE_SIGRTMIN) | 
| virtual ACE_Asynch_Read_Dgram_Result_Impl *  | create_asynch_read_dgram_result (ACE_Handler::Proxy_Ptr &handler_proxy, ACE_HANDLE handle, ACE_Message_Block *message_block, size_t bytes_to_read, int flags, int protocol_family, const void *act, ACE_HANDLE event=ACE_INVALID_HANDLE, int priority=0, int signal_number=ACE_SIGRTMIN) | 
| virtual ACE_Asynch_Write_Dgram_Result_Impl *  | create_asynch_write_dgram_result (ACE_Handler::Proxy_Ptr &handler_proxy, ACE_HANDLE handle, ACE_Message_Block *message_block, size_t bytes_to_write, int flags, const void *act, ACE_HANDLE event=ACE_INVALID_HANDLE, int priority=0, int signal_number=ACE_SIGRTMIN) | 
| virtual ACE_Asynch_Accept_Result_Impl *  | create_asynch_accept_result (ACE_Handler::Proxy_Ptr &handler_proxy, ACE_HANDLE listen_handle, ACE_HANDLE accept_handle, ACE_Message_Block &message_block, u_long bytes_to_read, const void *act, ACE_HANDLE event=ACE_INVALID_HANDLE, int priority=0, int signal_number=ACE_SIGRTMIN) | 
|   | Create the correct implementation class for ACE_Asynch_Accept::Result.  
  | 
| virtual ACE_Asynch_Connect_Result_Impl *  | create_asynch_connect_result (ACE_Handler::Proxy_Ptr &handler_proxy, ACE_HANDLE connect_handle, const void *act, ACE_HANDLE event=ACE_INVALID_HANDLE, int priority=0, int signal_number=ACE_SIGRTMIN) | 
|   | Create the correct implementation class for ACE_Asynch_Connect::Result.  
  | 
| virtual ACE_Asynch_Transmit_File_Result_Impl *  | create_asynch_transmit_file_result (ACE_Handler::Proxy_Ptr &handler_proxy, ACE_HANDLE socket, ACE_HANDLE file, ACE_Asynch_Transmit_File::Header_And_Trailer *header_and_trailer, u_long bytes_to_write, u_long offset, u_long offset_high, u_long bytes_per_send, u_long flags, const void *act, ACE_HANDLE event=ACE_INVALID_HANDLE, int priority=0, int signal_number=ACE_SIGRTMIN) | 
| virtual ACE_Asynch_Result_Impl *  | create_asynch_timer (ACE_Handler::Proxy_Ptr &handler_proxy, const void *act, const ACE_Time_Value &tv, ACE_HANDLE event=ACE_INVALID_HANDLE, int priority=0, int signal_number=ACE_SIGRTMIN) | 
 Static Public Member Functions | 
| ACE_Proactor *  | instance (size_t threads=0) | 
| ACE_Proactor *  | instance (ACE_Proactor *proactor, int delete_proactor=0) | 
| void  | close_singleton (void) | 
|   | Delete the dynamically allocated Singleton.  
  | 
| void  | cleanup (void *instance, void *arg) | 
| const ACE_TCHAR *  | dll_name (void) | 
|   | Name of dll in which the singleton instance lives.  
  | 
| const ACE_TCHAR *  | name (void) | 
|   | Name of component--ACE_Proactor in this case.  
  | 
| int  | run_event_loop (void) | 
| int  | run_event_loop (ACE_Time_Value &tv) | 
| int  | end_event_loop (void) | 
| int  | reset_event_loop (void) | 
| int  | check_reconfiguration (ACE_Proactor *) | 
| int  | event_loop_done (void) | 
|   | Report if the <ACE_Proactor::instance> event loop is finished.  
  | 
 Protected Member Functions | 
| virtual int  | proactor_post_wakeup_completions (int how_many) | 
| virtual void  | implementation (ACE_Proactor_Impl *implementation) | 
|   | Set the implementation class.  
  | 
 Static Protected Member Functions | 
| int  | post_wakeup_completions (int how_many) | 
 Protected Attributes | 
| ACE_Proactor_Impl *  | implementation_ | 
| int  | delete_implementation_ | 
| ACE_Proactor_Timer_Handler *  | timer_handler_ | 
|   | Handles timeout events.  
  | 
| ACE_Thread_Manager  | thr_mgr_ | 
|   | This will manage the thread in the Timer_Handler.  
  | 
| TIMER_QUEUE *  | timer_queue_ | 
|   | Timer Queue.  
  | 
| int  | delete_timer_queue_ | 
|   | Flag on whether to delete the timer queue.  
  | 
| sig_atomic_t  | end_event_loop_ | 
|   | Terminate the proactor event loop.  
  | 
| sig_atomic_t  | event_loop_thread_count_ | 
|   | Number of threads in the event loop.  
  | 
| ACE_SYNCH_MUTEX  | mutex_ | 
|   | Mutex to protect work with lists.  
  | 
 Static Protected Attributes | 
| ACE_Proactor *  | proactor_ = 0 | 
|   | Pointer to a process-wide <ace_proactor>.  
  | 
| int  | delete_proactor_ = 0 | 
|   | Must delete the <proactor_> if non-0.  
  | 
 Private Types | 
typedef ACE_Timer_Queue_Iterator_T< 
 ACE_Handler *, ACE_Proactor_Handle_Timeout_Upcall, 
 ACE_SYNCH_RECURSIVE_MUTEX >  | TIMER_QUEUE_ITERATOR | 
typedef ACE_Timer_List_T< 
 ACE_Handler *, ACE_Proactor_Handle_Timeout_Upcall, 
 ACE_SYNCH_RECURSIVE_MUTEX >  | TIMER_LIST | 
typedef ACE_Timer_List_Iterator_T< 
 ACE_Handler *, ACE_Proactor_Handle_Timeout_Upcall, 
 ACE_SYNCH_RECURSIVE_MUTEX >  | TIMER_LIST_ITERATOR | 
typedef ACE_Timer_Heap_T< 
 ACE_Handler *, ACE_Proactor_Handle_Timeout_Upcall, 
 ACE_SYNCH_RECURSIVE_MUTEX >  | TIMER_HEAP | 
typedef ACE_Timer_Heap_Iterator_T< 
 ACE_Handler *, ACE_Proactor_Handle_Timeout_Upcall, 
 ACE_SYNCH_RECURSIVE_MUTEX >  | TIMER_HEAP_ITERATOR | 
typedef ACE_Timer_Wheel_T< 
 ACE_Handler *, ACE_Proactor_Handle_Timeout_Upcall, 
 ACE_SYNCH_RECURSIVE_MUTEX >  | TIMER_WHEEL | 
typedef ACE_Timer_Wheel_Iterator_T< 
 ACE_Handler *, ACE_Proactor_Handle_Timeout_Upcall, 
 ACE_SYNCH_RECURSIVE_MUTEX >  | TIMER_WHEEL_ITERATOR | 
 Private Member Functions | 
|   | ACE_Proactor (const ACE_Proactor &) | 
|   | Deny access since member-wise won't work...  
  | 
| ACE_Proactor &  | operator= (const ACE_Proactor &) | 
 Friends | 
| class  | ACE_Proactor_Timer_Handler |