add epoll and epoll nonblock methods