在Ruby 1.9.3中,以字节为单位获取给定哈希(或任何对象)大小的最佳方法是什么?
"Find number of bytes a particular Hash is using in Ruby"的解决方案在1.9.3中似乎无效,因为ObjectSpace的文档中没有memsize_of
.
在Ruby 1.9.3中,以字节为单位获取给定哈希(或任何对象)大小的最佳方法是什么?
"Find number of bytes a particular Hash is using in Ruby"的解决方案在1.9.3中似乎无效,因为ObjectSpace的文档中没有memsize_of
.
1.9.3中的ObjectSpace.memsize_of
does work,是否记录:
puts RUBY_VERSION #=>1.9.3
require 'objspace'
p ObjectSpace.memsize_of("a"*23) #=> 23
p ObjectSpace.memsize_of("a"*24) #=> 24
p ObjectSpace.memsize_of("a".*1000) #=> 1000
h = {"a"=>1, "b"=>2}
p ObjectSpace.memsize_of(h) #=> 116