#include <IoTimeoutManager.h>
Inheritance diagram for OW32::CIoTimeoutManager:
Public Member Functions | |
CIoTimeoutManager () | |
Do nothing c'tor. | |
virtual | ~CIoTimeoutManager () |
Virtual d'tor as this is a base class. | |
virtual bool | addTimeout (CIoTimeoutCallback *pCallback, LPVOID key, __int64 after, bool *fUpdated=NULL)=0 |
Add a timeout. | |
virtual bool | updateTimeout (CIoTimeoutCallback *pCallback, LPVOID key, __int64 after, bool *fUpdated=NULL)=0 |
Update a previously added timeout. | |
virtual bool | removeTimeout (LPVOID key)=0 |
Remove a previously added timeout. | |
virtual void | drainTimeouts (CIoTimeoutDrainCallback *pCallback)=0 |
Drain timeouts, potentially using a predicate function. | |
virtual bool | shutdown ()=0 |
Shutdown the timeout manager. |
|
Add a timeout. The timeout object must implement #CIoTimeoutCallback, and the onTimeout function will be called after the specified time. If the key exists, the timeout for the existing object will be updated to expire after the given interval.
Implemented in OW32::CIOCPIoTimeoutManager. |
|
Drain timeouts, potentially using a predicate function. This function can be used to clear the timeout queue before shutdown if necessary. It is also possible to conditionally drain timeouts. Timeouts are removed if the predicate function returns true.
Implemented in OW32::CIOCPIoTimeoutManager. |
|
Remove a previously added timeout.
Implemented in OW32::CIOCPIoTimeoutManager. |
|
Shutdown the timeout manager.
Implemented in OW32::CIOCPIoTimeoutManager. |
|
Update a previously added timeout.
Implemented in OW32::CIOCPIoTimeoutManager. |