我正在尝试调试 Rails 应用程序中的内存泄漏,并且我正在尝试使用ObjectSpace#trace_object_allocations获取现有对象的转储。
为了让我更好地理解输出,我想我应该完全理解输出 JSON 行的含义:
{
"address":"0x7fb716009c20",
"type":"STRING",
"class":"0x7fb7360d40e0",
"embedded":true,
"bytesize":1,
"value":"f",
"encoding":"UTF-8",
"file":"/Users/songyy/.rvm/gems/ruby-2.3.1/gems/activerecord-4.2.7.1/lib/active_record/connection_adapters/abstract/quoting.rb",
"line":78,
"method":"unquoted_false",
"generation":93,
"memsize":40,
"flags":{
"wb_protected":true,
"old":true,
"uncollectible":true,
"marked":true
}
}
是否有任何参考可以解释此 JSON 对象中项目的确切含义?
特别是,我对以下含义感兴趣:
- 班级
- 嵌入式
- 字节大小
- 一代
- 旗帜
- wb_protected
- 老的
- 无法收藏
- 标记