Re:“Node.js is one of the worst things to happen to the soft...
by bitwize on Tuesday August 23, 2016 @03:12PM
(#12346587)
epoll (and kqueue) are products of Unix's approach to I/O, which is synchronous by design. You can build synchronous I/O routines out of asynchronous primitives, but not the reverse (without resorting to separate processes/tasks/threads).
epoll is more wrong and broken than kqueue, but neither are up to the level of capability the NT kernel offers.
But epoll is not the fault of Unix. Linux gets it wrong, but others do not. There's a good (and wildly entertaining) discussion/rant about it in this BSD Now episode: https://www.youtube.com/watch?v=l6XQUciI-Sc