Techioz Blog

Thread#run と Thread#wakeup の違い

概要

Thread#run と Thread#wakeup の 2 つのメソッドは何らかの形で異なりますが、それは私には明確ではありません。誰かが、異なる結果を示す最小限の違い (つまり、一方では run を使用し、もう一方では wakeup を使用するだけの違い) のコードのペアと、おそらくそれについての説明を提供してもらえますか?

編集Caryが指摘しているように、これは確かにこの質問の重複であり、そこに良い答えがありますが、スレッドが起動しているのに実行されていないことが何を意味するのかわかりません。それはスレッドがスリープ状態にあることとどう違うのでしょうか?

解決策

2 番目の質問に答えるために。スリープ中のスレッドをスケジュールすることはできませんが、スレッドが起動しているときに、現在実行中でない場合でも実行するようにスケジュールできます。

wakeup と run についての私の理解から最初の部分に追加すると、run は内部で wakeup を呼び出し、次に run を呼び出します。

それが役立つことを願っています。