我用 ruby 编写了一个 while 循环程序,我可以看到它使用的 RAM 在每次循环后明显增长!
所以我托盘:
- 在循环结束时使用
GC.Start
,但没有效果 - 将所有内部循环变量更改为全局,但每次循环后使用的内存仍会增加。
那么在 Ruby 中是否有任何等效于 PHP 的“ get_defined_vars
”函数来查看使我使用的内存像那样增长?
我用 ruby 编写了一个 while 循环程序,我可以看到它使用的 RAM 在每次循环后明显增长!
所以我托盘:
GC.Start
,但没有效果那么在 Ruby 中是否有任何等效于 PHP 的“ get_defined_vars
”函数来查看使我使用的内存像那样增长?
Kernel.local_variables
似乎是最接近的匹配
我会推荐你 http://ruby-prof.rubyforge.org/。
这是一个非常详尽的工具。
根据主页:
Ruby prof 可以测量许多不同的参数,包括调用时间、内存使用和对象分配。
编辑:似乎它最近在其 github 页面上进行了更新:https ://github.com/rdp/ruby-prof