From c9ca82c76f1eb0e06b0aa204a243d00f382579c5 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sat, 5 Feb 2011 10:11:56 +0000 Subject: *epoll: consolidate re-run logic There's a lot of code duplication here :< --- lib/rainbows/epoll/server.rb | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'lib/rainbows/epoll/server.rb') 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 -- cgit v1.2.3-24-ge0c7