我正在使用GC.stat我们的Rails应用程序中的内存使用情况. GC.stat使用以下键返回哈希:
:count
:heap_used
:heap_length
:heap_increment
:heap_live_num
:heap_free_num
:heap_final_num
Run Code Online (Sandbox Code Playgroud)
有谁知道这些值究竟是什么意思?在Ruby源代码(gc.c)中没有关于它们的文档,只是注释:"哈希的内容是实现定义的,将来可能会更改."
其中一些字段从上下文中有意义,例如countRuby已分配的堆数.但是什么heap_final_num呢?什么是heap_increment?是heap_length最小堆大小?
我乱搞RUBY_MIN_HEAP_SLOTS,RUBY_FREE_MIN和RUBY_GC_MALLOC_LIMIT,但改变这些包膜增值经销商似乎不具有任何影响:heap_count或:heap_length.:heap_count如果我从根本上增加最小堆插槽,我希望会下降.所以我真的想知道所有GC.stat值代表什么!
我正在使用Ruby 1.9.3.