public EPollAsyncEngine(int threadCount, bool useLinuxAio, bool batchOnPollThread) { _threads = new EPollThread[threadCount]; for (int i = 0; i < _threads.Length; i++) { _threads[i] = new EPollThread(useLinuxAio, batchOnPollThread); } }
public EPollAsyncContext(EPollThread thread, SafeHandle handle) { _epoll = thread; _writeQueue = new Queue(thread); _readQueue = new Queue(thread); bool success = false; handle.DangerousAddRef(ref success); _fd = handle.DangerousGetHandle().ToInt32(); _handle = handle; _epoll.Control(EPOLL_CTL_ADD, _fd, EPOLLIN | EPOLLOUT | EPOLLET, Key); }
public Queue(EPollThread thread) { _thread = thread; }