Thread.newでスレッドが作れる.
aThread = Thread.new(3){|i| sleep(i)}
スレッドの終了を待つには,aThread.joinをする.
aThread = Thread.new(3){|i| sleep(i); Thread.current['data'] = i} p aThread['data'] => nil aThread.join p aThread['data'] => 3
aThread[‘key’]を設定することでスレッド内での変数を外部から参照できるようになる.
現状のRubyにおけるスレッドは,1プロセス内で時分割してスレッド化しているような感じ.
なので一般的な意味でスレッドを切って処理したければ,dRuby経由で処理を呼び出すとかの工夫が必須.