ruby - Thread#run 和 Thread#wakeup 之间的区别

标签 ruby multithreading

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

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

最佳答案

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

根据我对唤醒与运行的理解,添加到第一部分是运行在其中调用唤醒,然后在其上调用运行。

希望对您有所帮助。

关于ruby - Thread#run 和 Thread#wakeup 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20033580/

相关文章:

ruby-on-rails - Authlogic:如何阻止某些 IP 地址注册?

ruby - 使用 sudo 进行 gem 安装 cocoapods

c++ - 使c++程序以交互方式将输入输出传递给windows命令提示符

c++ - 并发访问 QTcpSocket 对象

Ruby 函数删除所有空格?

javascript - 哪些 ruby​​ 图表库(gems)允许我使用时间作为 x 轴创建散点图?

ruby - ruby attr_accessor 的奇怪行为

vb.net - 启动时添加.Net应用程序时挂起

c++ - 如何以精确的毫秒间隔运行C++函数

windows - 如何获取多线程Windows Service应用程序中正在运行的线程数