ACE 8.0.1
Loading...
Searching...
No Matches
Protected Member Functions | Protected Attributes | Friends | List of all members
ACE_POSIX_Asynch_Timer Class Reference

This class is posted to the completion port when a timer expires. When the complete() method of this object is called, the handler's handle_timeout() method will be called. More...

#include <POSIX_Proactor.h>

Inheritance diagram for ACE_POSIX_Asynch_Timer:
Inheritance graph
[legend]
Collaboration diagram for ACE_POSIX_Asynch_Timer:
Collaboration graph
[legend]

Protected Member Functions

 ACE_POSIX_Asynch_Timer (const 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)
 Constructor.
 
 ~ACE_POSIX_Asynch_Timer () override=default
 Destructor.
 
void complete (size_t bytes_transferred, int success, const void *completion_key, u_long error=0) override
 This method calls the handler's handle_timeout method.
 
- Protected Member Functions inherited from ACE_POSIX_Asynch_Result
 ACE_POSIX_Asynch_Result (const ACE_Handler::Proxy_Ptr &handler_proxy, const void *act, ACE_HANDLE event, u_long offset, u_long offset_high, int priority, int signal_number)
 Constructor. <Event> is not used on POSIX.
 
- Protected Member Functions inherited from ACE_Asynch_Result_Impl
 ACE_Asynch_Result_Impl ()
 Do-nothing constructor.
 

Protected Attributes

ACE_Time_Value time_
 Time value requested by caller.
 
- Protected Attributes inherited from ACE_POSIX_Asynch_Result
ACE_Handler::Proxy_Ptr handler_proxy_
 Handler that will be called back.
 
const voidact_
 
size_t bytes_transferred_
 Bytes transferred by this operation.
 
int success_
 Success indicator.
 
const voidcompletion_key_
 ACT associated with handle.
 
u_long error_
 Error if operation failed.
 

Friends

class ACE_POSIX_Proactor
 

Additional Inherited Members

- Public Member Functions inherited from ACE_POSIX_Asynch_Result
size_t bytes_transferred () const
 Number of bytes transferred by the operation.
 
const voidact () const
 ACT associated with the operation.
 
int success () const
 Did the operation succeed?
 
const voidcompletion_key () const
 
u_long error () const
 Error value if the operation fails.
 
ACE_HANDLE event () const
 This returns ACE_INVALID_HANDLE on POSIX4 platforms.
 
u_long offset () const
 
u_long offset_high () const
 
int priority () const
 Priority of the operation.
 
int signal_number () const
 
int post_completion (ACE_Proactor_Impl *proactor)
 Post this to the Proactor.
 
virtual ~ACE_POSIX_Asynch_Result ()
 Destructor.
 
void set_error (u_long errcode)
 Simulate error value to use in the post_completion ()
 
void set_bytes_transferred (size_t nbytes)
 Simulate value to use in the post_completion ()
 
- Public Member Functions inherited from ACE_Asynch_Result_Impl
virtual ~ACE_Asynch_Result_Impl ()
 

Detailed Description

This class is posted to the completion port when a timer expires. When the complete() method of this object is called, the handler's handle_timeout() method will be called.

Constructor & Destructor Documentation

◆ ACE_POSIX_Asynch_Timer()

ACE_POSIX_Asynch_Timer::ACE_POSIX_Asynch_Timer ( const 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 )
protected

Constructor.

◆ ~ACE_POSIX_Asynch_Timer()

ACE_POSIX_Asynch_Timer::~ACE_POSIX_Asynch_Timer ( )
overrideprotecteddefault

Destructor.

Member Function Documentation

◆ complete()

void ACE_POSIX_Asynch_Timer::complete ( size_t bytes_transferred,
int success,
const void * completion_key,
u_long error = 0 )
overrideprotectedvirtual

This method calls the handler's handle_timeout method.

Implements ACE_Asynch_Result_Impl.

Friends And Related Symbol Documentation

◆ ACE_POSIX_Proactor

The factory method for this class is with the POSIX_Proactor class.

Member Data Documentation

◆ time_

ACE_Time_Value ACE_POSIX_Asynch_Timer::time_
protected

Time value requested by caller.


The documentation for this class was generated from the following files: