Thread#run和Thread #wakeup之间的差异

时间:2013-11-17 17:07:15

标签: ruby multithreading

两种方法Thread#run and Thread#wakeup在某种程度上是不同的,但我不清楚。有人可以提供一对差异最小的代码(即差异只是在一个中使用run,在另一个中使用wakeup),显示不同的结果,并可能解释它吗?

编辑正如Cary指出的那样,它确实是this question的副本,并且有一个很好的答案,但现在我不确定唤醒一个线程意味着什么但没跑。这与处于睡眠状态的线程有什么不同?

1 个答案:

答案 0 :(得分:0)

回答你的第二个问题。您无法安排休眠线程,但是当线程处于唤醒状态时,即使它当前没有运行,也可以安排它运行。

从我对wakeup vs run的理解中添加到第一部分是运行调用wakeup在其中,然后调用run on it。

希望有所帮助。