diff options
author | Eric Wong <e@yhbt.net> | 2010-08-25 13:58:11 -0700 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2010-08-26 08:47:36 +0000 |
commit | 47e1ee2d90161abf92ce14562bf508398fdfa6c9 (patch) | |
tree | d4fb816d9874ec0b0bdfd285e9ca10e4f17d0227 /lib/rainbows/fiber_spawn.rb | |
parent | bd3ed0b04f826b20cce83f9b77fc13c0eefd3902 (diff) | |
download | rainbows-47e1ee2d90161abf92ce14562bf508398fdfa6c9.tar.gz |
Trying to avoid adding singleton methods since it's too easily accessible by the public and not needed by the general public. This also allows us (or just Zbatery) to more easily add support systems without FD_CLOEXEC or fcntl, and also to optimize away a fcntl call for systems that inherit FD_CLOEXEC.
Diffstat (limited to 'lib/rainbows/fiber_spawn.rb')
-rw-r--r-- | lib/rainbows/fiber_spawn.rb | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/rainbows/fiber_spawn.rb b/lib/rainbows/fiber_spawn.rb index df72e70..ecf83d8 100644 --- a/lib/rainbows/fiber_spawn.rb +++ b/lib/rainbows/fiber_spawn.rb @@ -12,6 +12,7 @@ module Rainbows module FiberSpawn include Fiber::Base + include Rainbows::Acceptor def worker_loop(worker) # :nodoc: init_worker_process(worker) @@ -22,7 +23,7 @@ module Rainbows begin schedule do |l| break if G.cur >= limit - io = Rainbows.accept(l) or next + io = accept(l) or next ::Fiber.new { process_client(fio.new(io, ::Fiber.current)) }.resume end rescue => e |