ruby-on-rails - 测量多线程环境中线程的执行时间

标签 ruby-on-rails ruby ruby-on-rails-3 multithreading

在 Ruby/Rails 中是否可以测量多线程环境中单个线程的实际执行时间?

我一次最多创建 10 个线程,我目前正在计算每个线程的运行时间,但由于多个线程共享处理器,因此它们在共享资源时会出现间隙。所以我的时间将超过实际时间。

@urls.each do |url|
  Thread.new do
    time = Time.now
    request = http.get(url)
    response_time = Time.now - time
  end
  ...
end

最佳答案

wycats做了一个很酷的 gem ,叫做 ruby-prof那应该对你有帮助。它支持同时分析多个线程,包括进程时间、CPU 时间和墙时间。

关于ruby-on-rails - 测量多线程环境中线程的执行时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13302963/

相关文章:

ruby - 为什么 Ruby 方法调用特别慢(与其他语言相比)?

ruby-on-rails - Rails 4.1 向 heroku 推送 secret

ruby-on-rails - 如何将字符串传递到 Rails 部分?

ruby - 检测 IDLE 处理器 ruby​​ 的数量

templates - 从 Rails 3 中的 View 获取模板名称

ruby-on-rails - 异常通知 gem "ERROR: Failed to generate exception summary"

ruby-on-rails-3 - Assets :precompile stack level too deep

ruby-on-rails - ruby rails : Using XML Builder Partials

ruby-on-rails - Rails 中的动态多态 has_many 关联

ruby-on-rails - 安装 fog - 无法从 ASCII-8BIT 转换为 UTF-8