[英]How can I profile `require` statements in Ruby?
我很想知道我的 Ruby 代碼中的每個require
語句加載require
多長時間(以秒為單位)。 如何臨時覆蓋該方法並打印出一些用於慢速加載的日志信息?
您可以像這樣覆蓋Kernel.require
:
module Kernel
# make an alias of the original require
alias_method :original_require, :require
# rewrite require
def require name
start = Time.now
# code to time
ret = original_require name
finish = Time.now
diff = finish - start
# TODO: This should really add up all of
# the require calls for a certain module
if diff > 0.1
puts "#{diff} #{name}"
end
ret
end
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.