Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

ACE_WIN32_Asynch_Write_Stream Class Reference

This class is a factory for starting off asynchronous writes on a stream. More...

#include <WIN32_Asynch_IO.h>

Inheritance diagram for ACE_WIN32_Asynch_Write_Stream:

Inheritance graph
[legend]
Collaboration diagram for ACE_WIN32_Asynch_Write_Stream:

Collaboration graph
[legend]
List of all members.

Public Methods

 ACE_WIN32_Asynch_Write_Stream (ACE_WIN32_Proactor *win32_proactor)
 Constructor. More...

int write (ACE_Message_Block &message_block, size_t bytes_to_write, const void *act, int priority, int signal_number=0)
 This starts off an asynchronous write. Upto <bytes_to_write> will be written from the <message_block>. More...

int writev (ACE_Message_Block &message_block, size_t bytes_to_write, const void *act, int priority, int signal_number=0)
 Same as above but with gather support, through chaining of composite message blocks using the continuation field. More...

virtual ~ACE_WIN32_Asynch_Write_Stream (void)
 Destructor. More...

int open (ACE_Handler &handler, ACE_HANDLE handle, const void *completion_key, ACE_Proactor *proactor)
 Initializes the factory with information which will be used with each asynchronous call. More...

int cancel (void)
 This cancels all pending accepts operations that were issued by the calling thread. More...

ACE_Proactorproactor (void) const
 Return the underlying proactor. More...


Protected Methods

int shared_write (ACE_WIN32_Asynch_Write_Stream_Result *result)
 This is the method which does the real work and is there so that the ACE_Asynch_Write_File class can use it too. More...


Detailed Description

This class is a factory for starting off asynchronous writes on a stream.

Once <open> is called, multiple asynchronous <writes>s can started using this class. A ACE_Asynch_Write_Stream::Result will be passed back to the <handler> when the asynchronous write completes through the <ACE_Handler::handle_write_stream> callback.


Constructor & Destructor Documentation

ACE_WIN32_Asynch_Write_Stream::ACE_WIN32_Asynch_Write_Stream ACE_WIN32_Proactor   win32_proactor
 

Constructor.

ACE_WIN32_Asynch_Write_Stream::~ACE_WIN32_Asynch_Write_Stream void    [virtual]
 

Destructor.


Member Function Documentation

int ACE_WIN32_Asynch_Write_Stream::cancel void    [virtual]
 

This cancels all pending accepts operations that were issued by the calling thread.

The function does not cancel asynchronous operations issued by other threads.

Reimplemented from ACE_WIN32_Asynch_Operation.

Reimplemented in ACE_WIN32_Asynch_Write_File.

int ACE_WIN32_Asynch_Write_Stream::open ACE_Handler   handler,
ACE_HANDLE    handle,
const void *    completion_key,
ACE_Proactor   proactor
[virtual]
 

Initializes the factory with information which will be used with each asynchronous call.

If (<handle> == ACE_INVALID_HANDLE), <ACE_Handler::handle> will be called on the <handler> to get the correct handle.

Reimplemented from ACE_WIN32_Asynch_Operation.

Reimplemented in ACE_WIN32_Asynch_Write_File.

ACE_Proactor * ACE_WIN32_Asynch_Write_Stream::proactor void    const [virtual]
 

Return the underlying proactor.

Reimplemented from ACE_WIN32_Asynch_Operation.

Reimplemented in ACE_WIN32_Asynch_Write_File.

int ACE_WIN32_Asynch_Write_Stream::shared_write ACE_WIN32_Asynch_Write_Stream_Result   result [protected]
 

This is the method which does the real work and is there so that the ACE_Asynch_Write_File class can use it too.

int ACE_WIN32_Asynch_Write_Stream::write ACE_Message_Block   message_block,
size_t    bytes_to_write,
const void *    act,
int    priority,
int    signal_number = 0
[virtual]
 

This starts off an asynchronous write. Upto <bytes_to_write> will be written from the <message_block>.

Reimplemented from ACE_Asynch_Write_Stream_Impl.

Reimplemented in ACE_WIN32_Asynch_Write_File.

int ACE_WIN32_Asynch_Write_Stream::writev ACE_Message_Block   message_block,
size_t    bytes_to_write,
const void *    act,
int    priority,
int    signal_number = 0
[virtual]
 

Same as above but with gather support, through chaining of composite message blocks using the continuation field.

Reimplemented from ACE_Asynch_Write_Stream_Impl.

Reimplemented in ACE_WIN32_Asynch_Write_File.


The documentation for this class was generated from the following files:
Generated on Thu Oct 10 17:15:21 2002 for ACE by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001