## NAME

ACE_WIN32_Asynch_Write_File -

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

## SYNOPSIS

    class ACE_WIN32_Asynch_Write_File :
      public virtual ACE_Asynch_Write_File_Impl,
      public ACE_WIN32_Asynch_Write_Stream
    {
      public:
        ACE_WIN32_Asynch_Write_File (ACE_WIN32_Proactor *win32_proactor);
        int write (
            ACE_Message_Block &message_block,
            u_long bytes_to_write,
            u_long offset,
            u_long offset_high,
            const void *act,
            int priority,
            int signal_number = 0
            );
        virtual ~ACE_WIN32_Asynch_Write_File (void);
        int open (
            ACE_Handler &handler,
            ACE_HANDLE handle,
            const void *completion_key,
            ACE_Proactor *proactor
            );
        int cancel (void);
        ACE_Proactor* proactor (void) const;
      private:
        int write (
            ACE_Message_Block &message_block,
            u_long bytes_to_write,
            const void *act,
            int priority,
            int signal_number = 0
            );
    };

## DESCRIPTION

These classes only works on Win32 platforms.

The implementation of `ACE_Asynch_Transmit_File` and `ACE_Asynch_Accept` are only supported if ACE_HAS_WINSOCK2 is defined or you are on WinNT 4.0 or higher.

## Methods belong to ACE_WIN32_Asynch_Operation base class. These

methods are defined here to avoid VC++ warnings. They route the call to the ACE_WIN32_Asynch_Operation base class.

    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. If (`handle` == ACE_INVALID_HANDLE), `ACE_Handler::handle` will be called on the `handler` to get the correct handle.

    int cancel (void);

This cancels all pending accepts operations that were issued by the calling thread. The function does not cancel asynchronous operations issued by other threads.

    ACE_Proactor* proactor (void) const;

Return the underlying proactor.

## AUTHOR

Irfan Pyarali (irfan@cs.wustl.edu), Tim Harrison (harrison@cs.wustl.edu) and Alexander Babu Arulanthu `alex@cs.wustl.edu`

## LIBRARY

ace