Ruby GC 模块未定义方法`malloc_allocated_size`

Ruby GC module undefined method `malloc_allocated_size`

尝试在 Ruby 1.9.3

中使用 GC 模块

在 repl(或脚本)中出现此错误

include GC
=> Object
GC.enable
=> false
GC.malloc_allocations
NoMethodError: undefined method `malloc_allocations' for GC:Module

1.9.3 GC Module docs,malloc_allocations是一个public class方法那么为什么Ruby说它是一个未定义的方法?

文档省略了您需要在重新编译 ruby 之前编辑 gc.c 并将 CALC_EXACT_MALLOC_SIZE 设置为 1 以便此方法可用。此标志还打开支持此功能所需的跟踪。

参见示例https://github.com/ruby/ruby/blob/ruby_1_9_3/gc.c#L3718