Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

ACE_POSIX_CB_Proactor Class Reference

Implementation of Callback-based Proactor };. More...

#include <POSIX_CB_Proactor.h>

Inheritance diagram for ACE_POSIX_CB_Proactor:

Inheritance graph
[legend]
Collaboration diagram for ACE_POSIX_CB_Proactor:

Collaboration graph
[legend]
List of all members.

Public Member Functions

virtual Proactor_Type get_impl_type (void)
virtual ~ACE_POSIX_CB_Proactor (void)
 Destructor.
 ACE_POSIX_CB_Proactor (size_t max_aio_operations=ACE_AIO_DEFAULT_SIZE)

Static Public Member Functions

void aio_completion_func (sigval_t cb_data)

Protected Member Functions

virtual int handle_events (ACE_Time_Value &wait_time)
virtual int handle_events (void)
virtual ssize_t allocate_aio_slot (ACE_POSIX_Asynch_Result *result)
 Find free slot to store result and aiocb pointer.
virtual int notify_completion (int sig_num)
int handle_events_i (u_long milli_seconds)

Protected Attributes

ACE_SYNCH_SEMAPHORE sema_

Detailed Description

Implementation of Callback-based Proactor };.


Constructor & Destructor Documentation

ACE_POSIX_CB_Proactor::~ACE_POSIX_CB_Proactor void   )  [virtual]
 

Destructor.

ACE_POSIX_CB_Proactor::ACE_POSIX_CB_Proactor size_t  max_aio_operations = ACE_AIO_DEFAULT_SIZE  ) 
 

Constructor defines max number asynchronous operations that can be started at the same time.


Member Function Documentation

void ACE_POSIX_CB_Proactor::aio_completion_func sigval_t  cb_data  )  [static]
 

ssize_t ACE_POSIX_CB_Proactor::allocate_aio_slot ACE_POSIX_Asynch_Result result  )  [protected, virtual]
 

Find free slot to store result and aiocb pointer.

Reimplemented from ACE_POSIX_AIOCB_Proactor.

virtual Proactor_Type ACE_POSIX_CB_Proactor::get_impl_type void   )  [virtual]
 

Reimplemented from ACE_POSIX_AIOCB_Proactor.

int ACE_POSIX_CB_Proactor::handle_events void   )  [protected, virtual]
 

Block indefinitely until at least one event is dispatched. Dispatch a single set of events. If <wait_time> elapses before any events occur, return 0. Return 1 on success i.e., when a completion is dispatched, non-zero (-1) on errors and errno is set accordingly.

Reimplemented from ACE_POSIX_AIOCB_Proactor.

int ACE_POSIX_CB_Proactor::handle_events ACE_Time_Value wait_time  )  [protected, virtual]
 

Dispatch a single set of events. If <wait_time> elapses before any events occur, return 0. Return 1 on success i.e., when a completion is dispatched, non-zero (-1) on errors and errno is set accordingly.

Reimplemented from ACE_POSIX_AIOCB_Proactor.

int ACE_POSIX_CB_Proactor::handle_events_i u_long  milli_seconds  )  [protected]
 

Dispatch a single set of events. If <milli_seconds> elapses before any events occur, return 0. Return 1 if a completion is dispatched. Return -1 on errors.

Reimplemented from ACE_POSIX_AIOCB_Proactor.

int ACE_POSIX_CB_Proactor::notify_completion int  sig_num  )  [protected, virtual]
 

Notify queue of "post_completed" ACE_POSIX_Asynch_Results called from post_completion method

Reimplemented from ACE_POSIX_AIOCB_Proactor.


Member Data Documentation

ACE_SYNCH_SEMAPHORE ACE_POSIX_CB_Proactor::sema_ [protected]
 

semaphore variable to notify used to wait the first AIO start


The documentation for this class was generated from the following files:
Generated on Sun May 15 12:51:19 2005 for ACE by  doxygen 1.3.9.1