count_symbols(result_hash = nil) -> HashRuby 2.3.0 から[permalink][rdoc][edit] [added by objspace]-
Symbol の種類ごとにオブジェクトの数を格納したハッシュを返します。
- [PARAM]
result_hash: - 戻り値のためのハッシュを指定します。省略した場合は新しくハッシュを作成します。result_hash の内容は上書きされます。プローブ効果を避けるために使用します。
- [EXCEPTION]
TypeError: - result_hash にハッシュ以外を指定した時に発生します。
戻り値のキーの意味は以下の通りです。
mortal_dynamic_symbol-
ガベージコレクションの対象になる Symbol の数です。
immortal_dynamic_symbol-
動的に確保されましたが、ガベージコレクションの対象にはならない Symbol の数です。
immortal_static_symbol-
動的な確保を経ずに存在し、ガベージコレクションの対象にもならない Symbol の数です。
immortal_symbol-
ガベージコレクションの対象にはならない Symbol の数 (
immortal_dynamic_symbolとimmortal_static_symbolの合計) です。
本メソッドは普通の Ruby プログラマ向けのメソッドではありません。パフォーマンスやメモリ使用量に興味のある CRuby の開発者向けのものです。
例require 'objspace' p ObjectSpace.count_symbols # => {mortal_dynamic_symbol: 0, immortal_dynamic_symbol: 3, # immortal_static_symbol: 4482, immortal_symbol: 4485} # (内容は処理系やバージョン、実行時の状態に依存します)戻り値のハッシュは処理系に依存します。これは将来変更になるかもしれません。
本メソッドは CRuby 以外では動作しません。
- [PARAM]