about summary refs log tree commit homepage
diff options
context:
space:
mode:
-rw-r--r--lib/rainbows/http_server.rb1
-rw-r--r--lib/rainbows/thread_pool.rb1
-rw-r--r--lib/rainbows/thread_spawn.rb1
3 files changed, 1 insertions, 2 deletions
diff --git a/lib/rainbows/http_server.rb b/lib/rainbows/http_server.rb
index fc51ac3..6d61228 100644
--- a/lib/rainbows/http_server.rb
+++ b/lib/rainbows/http_server.rb
@@ -32,6 +32,7 @@ module Rainbows
         raise ArgumentError, "concurrency model #{model.inspect} not supported"
       extend(mod)
       Const::RACK_DEFAULTS['rainbows.model'] = @use = model
+      Const::RACK_DEFAULTS['rack.multithread'] = !!(/Thread/ =~ model.to_s)
     end
 
     def worker_connections(*args)
diff --git a/lib/rainbows/thread_pool.rb b/lib/rainbows/thread_pool.rb
index 2bae89b..c742e5d 100644
--- a/lib/rainbows/thread_pool.rb
+++ b/lib/rainbows/thread_pool.rb
@@ -27,7 +27,6 @@ module Rainbows
 
     def worker_loop(worker)
       init_worker_process(worker)
-      RACK_DEFAULTS["rack.multithread"] = true
       pool = (1..worker_connections).map { new_worker_thread }
       m = 0
 
diff --git a/lib/rainbows/thread_spawn.rb b/lib/rainbows/thread_spawn.rb
index fb9ea57..104e764 100644
--- a/lib/rainbows/thread_spawn.rb
+++ b/lib/rainbows/thread_spawn.rb
@@ -21,7 +21,6 @@ module Rainbows
 
     def worker_loop(worker)
       init_worker_process(worker)
-      RACK_DEFAULTS["rack.multithread"] = true
       threads = ThreadGroup.new
       alive = worker.tmp
       m = 0