A reactor for handling file descriptors in a background thread.
- The reactor's background thread is spawned on the first time that the reactor handle is fetched.
- Each file descriptor registers an interest to listen for.
- On registering a new file descriptor, a pipe is used to interrupt the poll operation.
A handle to the reactor, for registering and unregistering file descriptors.
Events that should be listened for on a given file descriptor.
Fetches the handle to the reactor which is running in a background thread.