るりまサーチ

最速Rubyリファレンスマニュアル検索!
33件ヒット [1-33件を表示] (0.016秒)
トップページ > クエリ:proc[x] > クエリ:binding[x] > モジュール:ObjectSpace[x]

別のキーワード

  1. _builtin to_proc
  2. _builtin proc
  3. proc curry
  4. httpserver mount_proc
  5. readline completion_proc

ライブラリ

キーワード

検索結果

ObjectSpace.#define_finalizer(obj, proc) -> Array (188.0)

obj が解放されるときに実行されるファイナライザ proc を 登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで はなく追加登録されます。固定値 0 と proc を配列にして返します。

...obj が解放されるときに実行されるファイナライザ proc
登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで
はなく追加登録されます。固定値 0 と proc を配列にして返します。

ブロックを指定した場...
...として Proc オブジェクトを指定します。proc は obj の回収時に obj の ID を引数として実行されます。

=== 使い方の注意

以下は、define_finalizer の使い方の悪い例です。

//emlist[悪い例][ruby]{
class Foo
def initialize
ObjectSpace
.define_...
...いでしょう。

//emlist[例][ruby]{
class Baz
def initialize
ObjectSpace
.define_finalizer self, eval(%q{
proc
{
raise "baz" rescue puts $!
raise "baz2"
puts "baz3"
}
}, TOPLEVEL_BINDING)
end
end
Baz.new
GC.start

# => baz
//}

@see spec/rubycmd...

ObjectSpace.#define_finalizer(obj) {|id| ...} -> Array (88.0)

obj が解放されるときに実行されるファイナライザ proc を 登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで はなく追加登録されます。固定値 0 と proc を配列にして返します。

...obj が解放されるときに実行されるファイナライザ proc
登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで
はなく追加登録されます。固定値 0 と proc を配列にして返します。

ブロックを指定した場...
...として Proc オブジェクトを指定します。proc は obj の回収時に obj の ID を引数として実行されます。

=== 使い方の注意

以下は、define_finalizer の使い方の悪い例です。

//emlist[悪い例][ruby]{
class Foo
def initialize
ObjectSpace
.define_...
...いでしょう。

//emlist[例][ruby]{
class Baz
def initialize
ObjectSpace
.define_finalizer self, eval(%q{
proc
{
raise "baz" rescue puts $!
raise "baz2"
puts "baz3"
}
}, TOPLEVEL_BINDING)
end
end
Baz.new
GC.start

# => baz
//}

@see spec/rubycmd...

ObjectSpace.#count_tdata_objects(result_hash = nil) -> Hash (13.0)

T_DATA の種類ごとにオブジェクトの数を格納したハッシュを返します。

...発者向けのものです。

//emlist[例][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,...