From 6733af0546a759b73fd63880e8ef2549caf4c4f2 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sun, 26 Dec 2010 23:16:41 +0000 Subject: never_block: simplify and split out code alias_method is a mess, super is superb! --- lib/rainbows/never_block/core.rb | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 lib/rainbows/never_block/core.rb (limited to 'lib/rainbows/never_block/core.rb') diff --git a/lib/rainbows/never_block/core.rb b/lib/rainbows/never_block/core.rb new file mode 100644 index 0000000..7188f75 --- /dev/null +++ b/lib/rainbows/never_block/core.rb @@ -0,0 +1,15 @@ +# -*- encoding: binary -*- +# :enddoc: +module Rainbows::NeverBlock::Core + def init_worker_process(worker) + super + o = Rainbows::O + pool = NB::Pool::FiberPool.new(o[:pool_size]) + base = o[:backend].to_s.gsub!(/([a-z])([A-Z])/, '\1_\2').downcase! + require "rainbows/never_block/#{base}" + client_class = Rainbows::NeverBlock::Client + client_class.superclass.const_set(:APP, Rainbows::G.server.app) + client_class.const_set(:POOL, pool) + logger.info "NeverBlock/#{o[:backend]} pool_size=#{o[:pool_size]}" + end +end -- cgit v1.2.3-24-ge0c7