count_tdata_objects(result_hash = nil) -> Hash
[permalink][rdoc] [added by objspace]
T_DATA の種類ごとにオブジェクトの数を格納したハッシュを返します。
本メソッドは普通の Ruby プログラマ向けのメソッドではありません。パフォーマンスに興味のある C Ruby の開発者向けのものです。
例:
ObjectSpace.count_tdata_objects # => {RubyVM::InstructionSequence=>504, :parser=>5, :barrier=>6, :mutex=>6, Proc=>60, RubyVM::Env=>57, Mutex=>1, Encoding=>99, ThreadGroup=>1, Binding=>1, Thread=>1, RubyVM=>1, :iseq=>1, Random=>1, ARGF.class=>1, Data=>1, :autoload=>3, Time=>2}
現在のバージョンでは、戻り値のキーはクラスオブジェクトかシンボルのオブジェクトです。
普通の参照可能なオブジェクトの場合、キーはクラスオブジェクトです。それ以外の内部的なオブジェクトの場合、キーはシンボルです。シンボルの値は rb_data_type_struct に格納された名前が使用されます。
戻り値のハッシュは処理系に依存します。これは将来変更になるかもしれません。
本メソッドは C Ruby 以外では動作しません。