I have several threads that are doing blocking reads on pipes created with IO.pipe. Kernel#exit is called, and the threads begin to die. I've managed to swallow most of the exceptions being generated except for this one:
RuntimeError: Error with selector: java.nio.channels.ClosedChannelException
It looks as though this needs to be wrapped in something like Errno::EBADF or IOError.