summary refs log tree commit homepage
path: root/lib/rainbows/never_block.rb
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2011-05-09 00:17:06 +0000
committerEric Wong <normalperson@yhbt.net>2011-05-09 00:17:06 +0000
commit725adcc6986bc2658d92ea3ebebe61d2b83060ad (patch)
treedcaa850fc3a329e98dd420083105421cabfc5295 /lib/rainbows/never_block.rb
parent3c1649226d2371ce09d14f3fcce18fec0af1ba02 (diff)
coolio_thread_pool, neverblock both use it, and
xepoll_thread_pool will support it next, too.
Diffstat (limited to 'lib/rainbows/never_block.rb')
-rw-r--r--lib/rainbows/never_block.rb14
1 files changed, 4 insertions, 10 deletions
diff --git a/lib/rainbows/never_block.rb b/lib/rainbows/never_block.rb
index a11b81d..63d9af3 100644
--- a/lib/rainbows/never_block.rb
+++ b/lib/rainbows/never_block.rb
@@ -15,20 +15,14 @@
 #   end
 #
 module Rainbows::NeverBlock
-
   # :stopdoc:
-  DEFAULTS = {
-    :pool_size => 20, # same default size used by NB
-    :backend => :EventMachine, # NeverBlock doesn't support Rev yet
-  }
+  extend Rainbows::PoolSize
 
   # same pool size NB core itself uses
   def self.setup # :nodoc:
-    o = Rainbows::O
-    DEFAULTS.each { |k,v| o[k] ||= v }
-    Integer === o[:pool_size] && o[:pool_size] > 0 or
-      raise ArgumentError, "pool_size must a be an Integer > 0"
-    Rainbows.const_get(o[:backend])
+    super
+    Rainbows::O[:backend] ||= :EventMachine # no Cool.io support, yet
+    Rainbows.const_get(Rainbows::O[:backend])
     require "never_block" # require EM first since we need a higher version
   end