From ad821f70a2488a91f2be1ac53cb2e64f50743989 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Tue, 28 Sep 2010 17:40:01 -0700 Subject: start using kgio library It removes the burden of byte slicing and setting file descriptor flags. In some cases, we can remove unnecessary peeraddr calls, too. --- lib/rainbows/fiber_pool.rb | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'lib/rainbows/fiber_pool.rb') diff --git a/lib/rainbows/fiber_pool.rb b/lib/rainbows/fiber_pool.rb index 63f1e2e..4f3ffd8 100644 --- a/lib/rainbows/fiber_pool.rb +++ b/lib/rainbows/fiber_pool.rb @@ -15,7 +15,6 @@ module Rainbows module FiberPool include Fiber::Base - include Rainbows::Acceptor def worker_loop(worker) # :nodoc: init_worker_process(worker) @@ -30,7 +29,7 @@ module Rainbows begin schedule do |l| fib = pool.shift or break # let another worker process take it - if io = accept(l) + if io = l.kgio_tryaccept fib.resume(Fiber::IO.new(io, fib)) else pool << fib -- cgit v1.2.3-24-ge0c7