back
2 comments
Message content, for lazy people :

nio4r provides a high performance IO selector API which lets you monitor several IO objects for events simultaneously using a single system call. It's similar to Kernel.select, but keeps its state between calls.

https://github.com/celluloid/nio4r

Selectors thunk to the epoll on Linux and kqueue on BSDs, using libev for Rubies with C extension support (MRI, Rubinius) and Java NIO on JRuby.

We're trying to get all Celluloid dependencies onto 1.x versions this year. nio4r is the first! (unless you count timers, which is already on 2.0.0). That's right, we're freezing APIs and trying to get things solid.

Changes from 0.5.0:

* Have Selector#register obtain the actual IO from a Monitor object because Monitor#initialize might convert it * Drop 1.8 support

Enjoy!

-- Tony Arcieri