Rudiments
|
Inherits object.
Public Member Functions | |
listener () | |
virtual | ~listener () |
void | addFileDescriptor (filedescriptor *fd) |
void | addReadFileDescriptor (filedescriptor *fd) |
void | addWriteFileDescriptor (filedescriptor *fd) |
void | removeFileDescriptor (filedescriptor *fd) |
void | removeAllFileDescriptors () |
int32_t | listen () |
int32_t | listen (int32_t sec, int32_t usec) |
singlylinkedlist< filedescriptor * > * | getReadReadyList () |
singlylinkedlist< filedescriptor * > * | getWriteReadyList () |
void | retryInterruptedWaits (bool retry) |
Public Member Functions inherited from object | |
virtual | ~object () |
The listener class listens for activity on a pool of filedescriptors or children of the filedescriptor class.
listener::listener | ( | ) |
Creates an instance of the listener class.
|
virtual |
Deletes this instance of the listener class.
void listener::addFileDescriptor | ( | filedescriptor * | fd | ) |
Adds the specified file descriptor to the pool that the listener is listening on. When listen() is called, it will listen for read or write operations on this file descriptor.
void listener::addReadFileDescriptor | ( | filedescriptor * | fd | ) |
Adds the specified file descriptor to the pool that the listener is listening on. When listen() is called, it will only listen for read operations on this file descriptor.
void listener::addWriteFileDescriptor | ( | filedescriptor * | fd | ) |
Adds the specified file descriptor to the pool that the listener is listening on. When listen() is called, it will only listen for write operations on this file descriptor.
singlylinkedlist<filedescriptor *>* listener::getReadReadyList | ( | ) |
Returns the list of file descriptors that were ready for read operations after the last call to listen().
singlylinkedlist<filedescriptor *>* listener::getWriteReadyList | ( | ) |
Returns the list of file descriptors that were ready for write operations after the last call to listen().
int32_t listener::listen | ( | ) |
Causes the application to wait until a read or write operation will proceed without blocking, as appropriate for each file descriptor added by previous calls.
Returns RESULT_ERROR on error or otherwise returns the number of file descriptors that are ready to be read from or written to.
int32_t listener::listen | ( | int32_t | sec, |
int32_t | usec | ||
) |
Causes the application to wait until a read or write operation will proceed without blocking, as appropriate for each file descriptor added by previous calls, or until "sec" seconds and "usec" microseconds have elapsed.
Entering -1 for either parameter causes the method to wait indefinitely.
Entering 0 for both parameters causes the method to fall through immediately, returning RESULT_TIMEOUT unless a write operation will immediately proceed without blocking.
Returns RESULT_ERROR on error, RESULT_TIMEOUT on timeout and otherwise returns the number of file descriptors that are ready to be read from or written to.
void listener::removeAllFileDescriptors | ( | ) |
Removes all file descriptors from the pool.
void listener::removeFileDescriptor | ( | filedescriptor * | fd | ) |
Removes the specified file descriptor from the pool.
void listener::retryInterruptedWaits | ( | bool | retry | ) |
If "retry" is true then waits are automatically retried if interrupted by a signal. If "retry" is false then waits are not automatically retried if interrupted by a signel.
Defaults to true.