Reference

ACE_POSIX_AIOCB_Asynch_Operation(3)

This class implements ACE_Asynch_Operation for AIOCB (Asynchronous I/O Control Blocks) based implementation of Proactor.

NAME

ACE_POSIX_AIOCB_Asynch_Operation -

This class implements ACE_Asynch_Operation for AIOCB (Asynchronous I/O Control Blocks) based implementation of Proactor.

SYNOPSIS

class ACE_POSIX_AIOCB_Asynch_Operation : 
  public virtual ACE_POSIX_Asynch_Operation
{
  public:
    ACE_POSIX_AIOCB_Proactor *posix_proactor (void) const;
  protected:
    ACE_POSIX_AIOCB_Asynch_Operation (
        ACE_POSIX_AIOCB_Proactor *posix_aiocb_proactor
        );
    virtual ~ACE_POSIX_AIOCB_Asynch_Operation (void);
    int register_aio_with_proactor (ACE_POSIX_Asynch_Result *result);
    ACE_POSIX_AIOCB_Proactor *posix_aiocb_proactor_;
};

DESCRIPTION

The implementation classes for POSIX implementation of Asynch Operations are defined here in this file.

PUBLIC MEMBERS

ACE_POSIX_AIOCB_Proactor *posix_proactor (void) const;

Return the underlying Proactor implementation.

PROTECTED MEMBERS

ACE_POSIX_AIOCB_Asynch_Operation (
    ACE_POSIX_AIOCB_Proactor *posix_aiocb_proactor
    );

Contructor.

virtual ~ACE_POSIX_AIOCB_Asynch_Operation (void);

Destructor.

int register_aio_with_proactor (ACE_POSIX_Asynch_Result *result);

This call is for the POSIX implementation. This method is used by ACE_Asynch_Operation to store some information with the Proactor after an aio_ call is issued, so that the Proactor can retreve this information to do aio_return and aio_error. Passing a '0' ptr returns the status, indicating whether there are slots available or no. Passing a valid ptr stores the ptr with the Proactor.

ACE_POSIX_AIOCB_Proactor *posix_aiocb_proactor_;

It is easy to get this specific implementation proactor here, since it is the one that creates the correct POSIX_Asynch_* objects. We can use this to get to the implementation proactor directly.

AUTHOR

Irfan Pyarali ([email protected]), Tim Harrison ([email protected]) and Alexander Babu Arulanthu [email protected]

LIBRARY

ace