當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。