私は今、私は、メソッドsay_helloを実行するクラスをしているし、そこRubyのスレッドを持つクラスの内部でメソッドを実行するにはどうすればよいですか?
class Person
attr_accessor :name
def say_hello
puts "person name #{self.name} "
end
end
を属性が、このスレッド
queue_thread= []
1..100.times do |number|
person= Person.new
person.name= number.to_s
thread_to_run=Thread.new {person.say_hello}
queue_thread << thread_to_run
end
queue_thread.map {|thread_current| thread_current.join}
と、あなたはそれを行う方法いくつかのアイデアを持っていますか?私は見て、proplemはスレッドよりもオブジェクトのインスタンスによってvarsの認識ではありません。
の答えが正しい、これは
"person name 1"
"person name 2"
"person name ..."
"person name etc"
あなたはどうなりますか?同時に複数のスレッドをコンソールに書き込むことは、物事を混乱させる良い方法です。 1つのスレッドが出力を処理する必要があります。 – tadman
答えをありがとう、私は再び編集し、私は人の名前1、人の名前2、人の名前3をコンソールで取得する必要があります。手伝っていただけませんか ? –
これが必要な場合は、スレッドが混乱することになります。なぜあなたは物事を貫通していますか?何らかの形で出力を収集し、表示する前にソートする必要があります。 – tadman