rack.multithread is only true for Thread* models
commit6edaf2b720743fa0ce751b45a0923712b8ed5909
authorEric Wong <normalperson@yhbt.net>
Thu, 15 Oct 2009 00:39:10 +0000 (14 17:39 -0700)
committerEric Wong <normalperson@yhbt.net>
Thu, 15 Oct 2009 00:39:55 +0000 (14 17:39 -0700)
tree1ffb61d2806e9da923850a9ac0954ba89a706e88
parent09eaa39fe7f1f5eb0a6d8aa4fab79afe6ff572a4
rack.multithread is only true for Thread* models

Enabling thread-safe or thread-aware code paths in applications
may even be dangerous in some cases and cause deadlocks in code
that otherwise does not expect threads.  This is especially true
of the Revactor case where being a "drop-in" replacement for IO
routines is dangerous if a mutex is held while an Actor performs
a "blocking" I/O operation.

Basically start to assume that anybody writing an app using
Rev or Revactor already takes Rev/Revactor concurrency into
account and won't need the rack.multithread flag set to do
special things.
lib/rainbows/const.rb
lib/rainbows/thread_pool.rb
lib/rainbows/thread_spawn.rb