まつもと ゆきひろです

In message "[ruby-ext:00352] Re: Ruby/Gtk + Imlib patch"
    on 99/07/30, "Dai.K." <MAP2303 / mapletown.net> writes:

|  あ、なるほど。Data_Wrap_Struct() で持つ構造体のサイズが膨大なんですね。
|  ちょうど、GC のタイミングに「malloc() が一定数を越えたとき」ってのが
|あるらしいので、構造体のメモリ確保に ruby の malloc() である xmalloc() を
|使ってみればいいんじゃないでしょうか?

xmalloc()が使えれば良いですが、imlibの内部でmallocしてるんで
しょうから無理ですね。とはいえ、GCはあまり頻繁にやっても良い
と手放しで言えるほどには軽くないので、たとえば画像のサイズの
合計をとっておいてある一定の大きさを越えた時点でGCする(この
場合の閾値はカンと経験で決める)とかいう手が使えるかもしれま
せん。
                                まつもと ゆきひろ /:|)