ライブラリ
- ビルトイン (33)
- drb (11)
-
drb
/ timeridconv (11) -
net
/ imap (11) -
rinda
/ tuplespace (11) - weakref (22)
キーワード
- DRbIdConv (11)
- FlagCountError (11)
- RefError (11)
- Symbol (11)
- Thread (11)
- TimerIdConv (11)
- TupleEntry (11)
- WeakMap (11)
- WeakRef (11)
検索結果
-
Net
:: IMAP :: FlagCountError (6001.0) -
サーバからのレスポンスに含まれるフラグが多すぎるときに発生する例外です。
サーバからのレスポンスに含まれるフラグが多すぎるときに発生する例外です。
この上限は Net::IMAP.max_flag_count= で設定します。 -
DRb
:: TimerIdConv (35.0) -
オブジェクトと識別子を相互に変換するクラスです。 これによって識別子に変換されたオブジェクトは一定時間 GC から保護されます。
...これによって識別子に変換されたオブジェクトは一定時間
GC から保護されます。
DRb::DRbIdConv では to_id で識別子に
変換し、リモートに送られたオブジェクトは GC から保護されません。
ローカルプロセスからの参照がなく...... GC によって廃棄される
可能性があります。
このクラスを DRb::DRbIdConv の代わりに用いることで、
to_id でオブジェクトを識別子に変換してから
一定時間(DRb::TimerIdConv.new の timeout で指定した秒数)
の間はそのオブジェクトは GC... -
DRb
:: DRbIdConv (25.0) -
オブジェクトと識別子を相互に変換するクラスです。
...れはリモートオブジェクト
が有効なのはリモートプロセス内の対応オブジェクトが GC で回収されるまで
であることを意味します。一方 GC アルゴリズムでのオブジェクトの到達性
判定はローカルプロセス内でのみ行なわれ......す。
これはリモートプロセスで参照されているオブジェクトがローカルプロセス内では
参照が切れてしまい、GC されてしまう可能性があるということを意味します。
つまりリモートに送るオブジェクトは適切にローカルか......必要がある
ということを意味します。一方リモート側から参照されなくなった場合には
ローカル側できちんと GC されるためには、ローカル側で適切に参照を切る
必要もあります。
別の仕組みとして、drb/timeridconv で提供... -
Symbol (25.0)
-
シンボルを表すクラス。シンボルは任意の文字列と一対一に対応するオブジェクトです。
...います。
Symbol クラスのメソッドには、String クラスのメソッドと同名で似た働きをするものもあります。
==== GC
内部的にシンボルは
* シンボルの情報を記録するテーブル
* そのテーブルの要素を指し示すポインタ
の2......す。
2.2.0 以降においては、テーブルに記録された情報は
Ruby によって GC されます。すなわち、ある使わなくなった
シンボルのテーブル上の情報はGCによって削除されます。
2.1 以前ではこの機能がなかったため、ユーザか......DoS に対して弱い
可能性がありましたが、
そのような問題は2.2以降では解決されました。
ただし拡張ライブラリ内で rb_intern によって生成された
シンボルに関するテーブル上の情報はGCされませんので注意してください。... -
ObjectSpace
:: WeakMap (17.0) -
GC の対象になるオブジェクトへの weak reference を持つクラスです。主に WeakRef クラスの内部で使用されるため、weakref ライブラリ 経由で使用してください。
...GC の対象になるオブジェクトへの weak reference を持つクラスです。主に
WeakRef クラスの内部で使用されるため、weakref ライブラリ
経由で使用してください。... -
WeakRef
:: RefError (17.0) -
GC されたオブジェクトを参照しようとしたときに発生する例外です。
...GC されたオブジェクトを参照しようとしたときに発生する例外です。... -
WeakRef (13.0)
-
weak reference を実現するクラスです。
...られたオブジェクトをポイントしますが、
ポイント先のオブジェクトは GC される可能性があります。
アクセスしようとしたときにオブジェクトが GC されていれば
WeakRef::RefError が発生します。
delegate も参照してください... -
Rinda
:: TupleEntry (7.0) -
タプルスペース内に含まれるタプルを管理するためのクラスです。 タプルの有効期限を管理し、タプルのキャンセル操作ができます。
...ジェクトによって
このオブジェクトを参照します。そのためタプルスペースのプロセス側では
参照切れによるGCが発生し、TupleEntryオブジェクトが消滅してしまうかもしれません。
これを防ぐには何らかの仕掛けが必要でし... -
Symbol (7.0)
-
シンボルを表すクラス。シンボルは任意の文字列と一対一に対応するオブジェクトです。
...います。
Symbol クラスのメソッドには、String クラスのメソッドと同名で似た働きをするものもあります。
==== GC
内部的にシンボルは
* シンボルの情報を記録するテーブル
* そのテーブルの要素を指し示すポインタ
の2... -
Thread (7.0)
-
スレッドを表すクラスです。スレッドとはメモリ空間を共有して同時に実行される制御の流れです。 Thread を使うことで並行プログラミングが可能になります。
...ead#kill 等で終了したスレッドはこの状態になります。この状
態のスレッドはどこからも参照されていなければ GC によりメモリ上から
なくなります。
この状態のスレッドは「死んで」います。
=== デッドロックの検出
@...