別のキーワード
クラス
-
ObjectSpace
:: WeakMap (11)
モジュール
- GC (22)
- ObjectSpace (44)
キーワード
- DRbIdConv (11)
-
NEWS for Ruby 2
. 0 . 0 (11) -
NEWS for Ruby 2
. 1 . 0 (11) -
NEWS for Ruby 2
. 2 . 0 (10) -
NEWS for Ruby 2
. 3 . 0 (9) -
NEWS for Ruby 2
. 7 . 0 (5) - Ruby用語集 (11)
- WeakMap (11)
- [] (11)
-
define
_ finalizer (22) -
garbage
_ collect (22) -
ruby 1
. 6 feature (11) -
ruby 1
. 8 . 4 feature (11) - start (11)
-
undefine
_ finalizer (11)
検索結果
先頭5件
-
GC (38604.0)
-
GC は Ruby インタプリタの「ゴミ集め(Garbage Collection)」を制御 するモジュールです。
...GC は Ruby インタプリタの「ゴミ集め(Garbage Collection)」を制御
するモジュールです。
=== GCのチューニングについて
Ruby 2.1ではRGenGCと呼ばれる新たなGCメカニズムが導入されました。
それにともない、以下の環境変数が導入......でGCの動作をチューニングすることができます。
これらの環境変数の効果はRubyの起動時のみ有効です(つまりrubyを動かしている
途中で変更することはできません)。
====[a:tuning_gc] チューニングのための環境変数
* RUBY_GC_HEAP_......放はこの単位で行われる。
この「ページ」はOSのメモリ管理用語であるページとは異なる概念であることに注意。
==== 参考資料
* http://www.atdot.net/~ko1/activities/2014_rubyconf_ph_pub.pdf
* http://tmm1.net/ruby21-rgengc/
@see ObjectSpace... -
GC
# garbage _ collect(full _ mark: true , immediate _ sweep: true) -> nil (21048.0) -
ガーベージコレクトを開始します。
...ーベージコレクトを開始します。
GC.start や ObjectSpace.#garbage_collect と同じ働きをします。
GC.disable により GC が禁止されている場合は何もしません。
nil を返します。
@param full_mark マイナー GC を動作させる場合は false を、そ......将来のバージョンとの互換性も保証されません。また、Ruby の実装がサポー
トしていない場合はキーワード引数を指定しても無視される可能性があります。
//emlist[例][ruby]{
include GC
GC.count # => 3
garbage_collect
GC.count # => 4
//}......レクトを開始します。
GC.start や ObjectSpace.#garbage_collect と同じ働きをします。
GC.disable により GC が禁止されている場合でもガベージコレクトを開始します。
nil を返します。
@param full_mark マイナー GC を動作させる場合は fal... -
GC
. start(full _ mark: true , immediate _ sweep: true) -> nil (21048.0) -
ガーベージコレクトを開始します。
...ージコレクトを開始します。
GC#garbage_collect や ObjectSpace.#garbage_collect と同じ働きをします。
GC.disable により GC が禁止されている場合は何もしません。
nil を返します。
@param full_mark マイナー GC を動作させる場合は false を......す。将来のバージョンとの互換性も保証されません。また、Ruby の実装がサポー
トしていない場合はキーワード引数を指定しても無視される可能性があります。
//emlist[例][ruby]{
GC.count # => 3
GC.start # => nil
GC.count # => 4
//}......トを開始します。
GC#garbage_collect や ObjectSpace.#garbage_collect と同じ働きをします。
GC.disable により GC が禁止されている場合でもガベージコレクトを開始します。
nil を返します。
@param full_mark マイナー GC を動作させる場合は... -
ObjectSpace
. # define _ finalizer(obj) {|id| . . . } -> Array (21048.0) -
obj が解放されるときに実行されるファイナライザ proc を 登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで はなく追加登録されます。固定値 0 と proc を配列にして返します。
...t[悪い例][ruby]{
class Foo
def initialize
ObjectSpace.define_finalizer(self) {
puts "foo"
}
end
end
Foo.new
GC.start
//}
これは、渡された proc の self が obj を参照しつ
づけるため。そのオブジェクトが GC の対象になりません。
tempfile は......uts "bar"
}
end
def initialize
ObjectSpace.define_finalizer(self, Bar.callback)
end
end
Bar.new
GC.start
//}
proc の呼び出しで発生した大域脱出(exitや例外)は無視されます。
これは、スクリプトのメイン処理が GC の発生によって非同期に中......いでしょう。
//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 , proc) -> Array (21048.0) -
obj が解放されるときに実行されるファイナライザ proc を 登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで はなく追加登録されます。固定値 0 と proc を配列にして返します。
...t[悪い例][ruby]{
class Foo
def initialize
ObjectSpace.define_finalizer(self) {
puts "foo"
}
end
end
Foo.new
GC.start
//}
これは、渡された proc の self が obj を参照しつ
づけるため。そのオブジェクトが GC の対象になりません。
tempfile は......uts "bar"
}
end
def initialize
ObjectSpace.define_finalizer(self, Bar.callback)
end
end
Bar.new
GC.start
//}
proc の呼び出しで発生した大域脱出(exitや例外)は無視されます。
これは、スクリプトのメイン処理が GC の発生によって非同期に中......いでしょう。
//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
. # undefine _ finalizer(obj) -> object (21030.0) -
obj に対するファイナライザをすべて解除します。 obj を返します。
...ze"
}
end
def initialize
ObjectSpace.define_finalizer(self, Sample.callback)
end
def undef
ObjectSpace.undefine_finalizer(self)
end
end
Sample.new
GC.start
# => finalize
Sample.new
sample.undef
GC.start
# ※何も出力されない
//}
@see ObjectSpace.#define_finalizer... -
ObjectSpace
. # garbage _ collect(full _ mark: true , immediate _ sweep: true) -> nil (21028.0) -
どこからも参照されなくなったオブジェクトを回収します。 GC.start と同じです。
...どこからも参照されなくなったオブジェクトを回収します。
GC.start と同じです。
@param full_mark マイナー GC を動作させる場合は false を、そうでない場
合は true を指定します。
@param immediate_sweep sweep を遅らせる......数は Ruby の実装やバージョンによって異なりま
す。将来のバージョンとの互換性も保証されません。また、Ruby の実装がサポー
トしていない場合はキーワード引数を指定しても無視される可能性があります。
@see GC.start... -
ObjectSpace
:: WeakMap (3016.0) -
GC の対象になるオブジェクトへの weak reference を持つクラスです。主に WeakRef クラスの内部で使用されるため、weakref ライブラリ 経由で使用してください。
...GC の対象になるオブジェクトへの weak reference を持つクラスです。主に
WeakRef クラスの内部で使用されるため、weakref ライブラリ
経由で使用してください。... -
ObjectSpace
:: WeakMap # [](key) -> object | nil (3006.0) -
引数 key で指定されたオブジェクトが参照するオブジェクトを返します。
...ey で指定されたオブジェクトが参照するオブジェクトを返します。
参照先のオブジェクトが存在しない場合、GC されている場合、対象外のオブジェ
クトを参照している場合に nil を返します。
@param key 参照元のオブジェク... -
NEWS for Ruby 2
. 1 . 0 (222.0) -
NEWS for Ruby 2.1.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...ます。
* GC
* 改良: RGenGC として知られている世代別GCが導入しました
* 追加した環境変数
* RUBY_GC_HEAP_INIT_SLOTS
* RUBY_GC_HEAP_FREE_SLOTS
* RUBY_GC_HEAP_GROWTH_FACTOR
* RUBY_GC_HEAP_GROWTH_MAX_SLOTS
* RUBY_GC_MALLOC_LIMIT_MAX......_GROWTH_FACTOR
* RUBY_GC_OLDMALLOC_LIMIT
* RUBY_GC_OLDMALLOC_LIMIT_MAX
* RUBY_GC_OLDMALLOC_LIMIT_GROWTH_FACTOR
* 廃止した環境変数
* RUBY_FREE_MIN (RUBY_GC_HEAP_FREE_SLOTS を代わりに使います)
* RUBY_HEAP_MIN_SLOTS (RUBY_GC_HEAP_INIT_SLOTS を代わ......追加: ObjectSpace.#trace_object_allocations
* 追加: ObjectSpace.#trace_object_allocations_start
* 追加: ObjectSpace.#trace_object_allocations_stop
* 追加: ObjectSpace.#trace_object_allocations_clear
* 追加: ObjectSpace.#allocation_sourcefile
* 追加: ObjectSpace.#alloc...