当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Ruby ObjectSpace.count_objects用法及代码示例


本文简要介绍ruby语言中 ObjectSpace.count_objects 的用法。

用法

count_objects([result_hash]) → hash

计算按类型分组的所有对象。

它返回一个哈希,例如:

{
  :TOTAL=>10000,
  :FREE=>3011,
  :T_OBJECT=>6,
  :T_CLASS=>404,
  # ...
}

返回的哈希的内容是特定于实现的。将来可能会改变。

:T_ 开头的键表示活动对象。例如,:T_ARRAY 是数组的数量。 :FREE 表示现在未使用的对象槽。 :TOTAL 表示上述的总和。

如果给出了可选参数result_hash,它将被覆盖并返回。这是为了避免探测效应。

h = {}
ObjectSpace.count_objects(h)
puts h
# => { :TOTAL=>10000, :T_CLASS=>158280, :T_MODULE=>20672, :T_STRING=>527249 }

此方法仅适用于 C Ruby。

相关用法


注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 ObjectSpace.count_objects。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。