#include <IOCPIoTimeoutManager.h>
Inheritance diagram for OW32::CIOCPIoTimeoutManager:
Public Member Functions | |
CIOCPIoTimeoutManager () | |
Default c'tor. | |
~CIOCPIoTimeoutManager () | |
D'tor cleaning up. | |
virtual bool | addTimeout (CIoTimeoutCallback *pCallback, LPVOID key, __int64 after, bool *fUpdated=NULL) |
Add a timeout. | |
virtual bool | updateTimeout (CIoTimeoutCallback *pCallback, LPVOID key, __int64 after, bool *fUpdated=NULL) |
Update a previously added timeout. | |
virtual bool | removeTimeout (LPVOID key) |
Remove a previously added timeout. | |
virtual void | drainTimeouts (CIoTimeoutDrainCallback *pCallback) |
Drain timeouts, potentially using a predicate function. | |
bool | addTimeout (CAsyncIoCompletionSocket *pSocket) |
Add a timeout for the given IOCP socket. | |
bool | updateTimeout (CAsyncIoCompletionSocket *pSocket) |
Update a previously added timeout for the given socket. | |
void | removeTimeout (CAsyncIoCompletionSocket *pSocket) |
Remove a previously added timeout for the given socket. | |
virtual bool | shutdown () |
Shutdown the timeout manager. | |
bool | initialise (HANDLE hCompletionPort) |
Initialise the timeout manager. |
|
Add a timeout for the given IOCP socket.
|
|
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.
Implements OW32::CIoTimeoutManager. |
|
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.
Implements OW32::CIoTimeoutManager. |
|
Initialise the timeout manager.
|
|
Remove a previously added timeout for the given socket.
|
|
Remove a previously added timeout.
Implements OW32::CIoTimeoutManager. |
|
Shutdown the timeout manager.
Implements OW32::CIoTimeoutManager. |
|
Update a previously added timeout for the given socket.
|
|
Update a previously added timeout.
Implements OW32::CIoTimeoutManager. |