Ruby 1.8.7 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Threadクラス > critical
critical -> bool
[permalink][rdoc]critical=(newstate)
真である間、スレッドの切替えを行いません。
カレントスレッドが停止状態になった場合や、シグナルに割り込まれた場合には、 自動的に false になります。 ただし、Thread.new によりスレッドを生成した場合には、critical の値に関わらず そのスレッドは実行されます。 また、Thread.pass により明示的に切替えることもできます。
デフォルトは false です。
注意: I/O や GC、拡張ライブラリがからむとこのフラグは無視さ れることもあります。排他制御を行うにはこのメソッドに頼らず Mutex や Monitor を使うべきです。