加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby – 当你不加入你的主题时会发生什么?

发布时间:2020-12-17 03:09:49 所属栏目:百科 来源:网络整理
导读:我正在编写一个 ruby程序,它将使用线程来完成一些工作.正在完成的工作需要非确定的时间来完成,范围可以是5到45秒.下面是线程代码的粗略示例: loop do # Program loop items = get_items threads = [] for item in items threads Thread.new(item) do |i| #
我正在编写一个 ruby程序,它将使用线程来完成一些工作.正在完成的工作需要非确定的时间来完成,范围可以是5到45秒.下面是线程代码的粗略示例:

loop do                         # Program loop
  items = get_items
  threads = []

  for item in items
    threads << Thread.new(item) do |i|
      # do work on i
    end

    threads.each { |t| t.join } # What happens if this isn't there?
  end
end

我的偏好是跳过加入线程而不是阻止整个应用程序.但是我不知道这是什么长期影响,特别是因为代码几乎立即再次运行.这是安全的吗?或者是否有更好的方法来生成一个线程,让它工作,并在它完成时清理,所有这些都在一个无限循环中?

解决方法

我认为这实际上取决于你的线程工作的内容.例如,如果您的主线程需要打印“X work done”,您需要加入以确保您显示正确的答案.如果您没有这样的要求,那么您不一定需要加入.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读