|
scclib
Stable Cloud Computing C++ Library
|
Poller which allows polling of generic file descriptors for various events. More...
#include <poller.h>
Public Types | |
| enum | PollFlag { input = 0x1 , output = 0x2 , read_hup = 0x4 , priority = 0x8 , hup = 0x10 , error = 0x20 } |
| Polling flags. More... | |
Public Member Functions | |
| Poller (const Poller &)=delete | |
| void | operator= (const Poller &)=delete |
| Poller (Poller &&)=delete | |
| const Poller & | operator= (Poller &&)=delete |
| void | set (int, int) |
| Add a file desriptor to poller. More... | |
| void | remove (int) |
| Remove a file descriptor from poller. More... | |
| void | wait () |
| Wait forever for an event. | |
| void | wait (std::chrono::milliseconds t) |
| Wait for a number of milliseconds for an event. | |
| int | event (int) |
| Return flags which were polled for this file descriptor. More... | |
Poller which allows polling of generic file descriptors for various events.
Examples of valid descriptors are pipes and stream (TCP) sockets.
After a wait(), the poller can be tested to see which events have been polled.
Example from scclib/net/unittest/inet.cc using a Poller to wait for Event
Polling flags.
| int Poller::event | ( | int | fd | ) |
| void Poller::remove | ( | int | fd | ) |
| void Poller::set | ( | int | fd, |
| int | flags | ||
| ) |