このマニュアルは既にメンテナンスが終了したバージョンの Ruby を対象としています。 最新版のマニュアルへ

Ruby 1.8.7 リファレンスマニュアル

singleton method Thread.critical

critical -> bool[permalink][rdoc]
critical=(newstate)

真である間、スレッドの切替えを行いません。

カレントスレッドが停止状態になった場合や、シグナルに割り込まれた場合には、自動的に false になります。ただし、Thread.new によりスレッドを生成した場合には、critical の値に関わらず そのスレッドは実行されます。また、Thread.pass により明示的に切替えることもできます。

デフォルトは false です。

注意: I/O や GC、拡張ライブラリがからむとこのフラグは無視されることもあります。排他制御を行うにはこのメソッドに頼らず MutexMonitor を使うべきです。

[PARAM] newstate:
スレッドの切替えを許すかどうかを、true か false で指定します。