#include <epoll_channel.h>
Public Member Functions | |
EpollChannel (int channel_fd, async2::Dispatcher &dispatcher, multibuf::MultiBufAllocator &allocator) | |
EpollChannel (const EpollChannel &)=delete | |
EpollChannel & | operator= (const EpollChannel &)=delete |
EpollChannel (EpollChannel &&)=default | |
EpollChannel & | operator= (EpollChannel &&)=default |
Channel implementation which writes to and reads from a file descriptor, backed by Linux's epoll notification system.
This channel depends on APIs provided by the EpollDispatcher and cannot be used with any other dispatcher backend.
An instantiated EpollChannel takes ownership of the file descriptor it is given, and will close it if the channel is closed or destroyed. Users should not close a channel's file descriptor from outside.