diff options
Diffstat (limited to 'lib/rainbows/epoll/server.rb')
-rw-r--r-- | lib/rainbows/epoll/server.rb | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/lib/rainbows/epoll/server.rb b/lib/rainbows/epoll/server.rb index 820a6da..a8be3e2 100644 --- a/lib/rainbows/epoll/server.rb +++ b/lib/rainbows/epoll/server.rb @@ -6,16 +6,13 @@ module Rainbows::Epoll::Server MAX = Rainbows.server.worker_connections THRESH = MAX - 1 LISTENERS = Rainbows::HttpServer::LISTENERS - ReRun = [] EP = Rainbows::Epoll::EP def self.run LISTENERS.each { |sock| EP.add(sock.extend(self), IN) } begin EP.wait(nil, 1000) { |_, obj| obj.epoll_run } - while obj = ReRun.shift - obj.epoll_run - end + Rainbows::Epoll.rerun Rainbows::Epoll::Client.expire rescue Errno::EINTR rescue => e |