2 ms·
> things like Go, Node and Tornado [does not allow] the NT completion-oriented I/O facilities to be optimally exploited. nodejs is built on libuv[1], which use
by justinmk 10y ago
> things like Go, Node and Tornado [does not allow] the NT completion-oriented I/O facilities to be optimally exploited.
nodejs is built on libuv[1], which uses IOCP on Windows (and epoll, kqueue, etc. on other platforms). What's non-optimal about it?
[1] https://github.com/libuv/libuv https://github.com/libuv/libuv
- trentnelson 10y ago"The things that bothers me about all the 'async I/O' libraries out there... is that the implementation -- single-threaded, non-blocking sockets, event loop, I/O multiplex via kqueue/epoll, is well suited to Linux/BSD/OSX, but there's nothing asynchronous about it, it's technically synchronous non-blocking I/O, and it's inherently single-threaded." https://speakerdeck.com/trent/pyparallel-how-we-removed-the-gil-and-exploited-all-cores?slide=37 https://speakerdeck.com/trent/pyparallel-how-we-removed-the-...