チケット #92

メモリ使用量
登録: 2002-04-09 20:46 最終更新: 2002-04-09 20:46

報告者:
担当者:
(未割り当て)
チケットの種類:
状況:
オープン
コンポーネント:
(未割り当て)
マイルストーン:
(未割り当て)
優先度:
5 - 中
重要度:
5 - 中
解決法:
なし
ファイル:
なし

詳細

プロパティを
object.prop_name
の形式で参照することができますが,1つのプロパティを呼び
出すだけで大量のメモリを消費してしまいます.

現在の実装では呼び出しが起こるごとにProcオブジェクトが
生成されたり,環境獲得の実装が良くないために無駄なオブ
ジェクト生成が行われたりしているのが原因です.

たとえば,obj.xxxを呼び出すと,

メソッドxxxの検索→method_missing→proc=__get_callable→
xxxに関連づけられたProcオブジェクトを獲得→proc.call

という動作をしますが,xxxを呼び出すたびにProcオブジェク
トを生成しなおしています.少々のキャッシングはしていま
すが,どうもうまく機能していないようです.それと,GCでう
まく回収できていないところも気になります.

もっと効率的な実装方法を考えなければならないと思ってい
ます.よいアイディアがあったら提案してください.

チケットの履歴 (0 件中 0 件表示)

添付ファイルリスト

添付ファイルはありません

編集

ログインしていません。ログインしていない状態では、コメントに記載者の記録が残りません。 » ログインする