about summary refs log tree commit homepage
path: root/lib/rainbows/thread_pool.rb
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2009-11-28 11:26:39 -0800
committerEric Wong <normalperson@yhbt.net>2009-11-28 11:26:39 -0800
commit2489368a624cff50a330238cf3c3f16eb0bd743c (patch)
tree782d060210a50cbf96ee3df11781f76a96166298 /lib/rainbows/thread_pool.rb
parent6443cc4b87e3ba71ad661d795c3856f95a058a24 (diff)
downloadrainbows-2489368a624cff50a330238cf3c3f16eb0bd743c.tar.gz
Diffstat (limited to 'lib/rainbows/thread_pool.rb')
-rw-r--r--lib/rainbows/thread_pool.rb7
1 files changed, 2 insertions, 5 deletions
diff --git a/lib/rainbows/thread_pool.rb b/lib/rainbows/thread_pool.rb
index 949db6f..f398828 100644
--- a/lib/rainbows/thread_pool.rb
+++ b/lib/rainbows/thread_pool.rb
@@ -49,11 +49,8 @@ module Rainbows
             # problem.  On the other hand, a thundering herd may not
             # even incur as much overhead as an extra Mutex#synchronize
             ret = IO.select(LISTENERS, nil, nil, 1) and
-                  ret.first.each do |sock|
-                    begin
-                      process_client(sock.accept_nonblock)
-                    rescue Errno::EAGAIN, Errno::ECONNABORTED
-                    end
+                  ret.first.each do |s|
+                    s = Rainbows.accept(s) and process_client(s)
                   end
           rescue Errno::EINTR
           rescue Errno::EBADF, TypeError