JRuby

IO.read_nonblock should raise Errno::EAGAIN if there is no immediate data