From: shugo@... (MAEDA Shugo) Date: 1998-11-22T00:44:39+09:00 Subject: [ruby-dev:3623] Re: Time object memory leak? 前田です。 # やっとDebian2.0に移行できました:-) >>>>> In [ruby-dev:3621] >>>>> "fukusima" == Masaki Fukushima wrote: fukusima> Time オブジェクトを大量に生成するスクリプトを動かしたところ、プロセスの消費 fukusima> メモリがどんどん増えてしまいました。 fukusima> time.c を見たところ、メモリリークのように見えます。 (snip) fukusima> - obj = Data_Make_Struct(klass, struct time_object, 0, 0, tobj); fukusima> + obj = Data_Make_Struct(klass, struct time_object, 0, free, tobj); 第4引数を0にした時はfreeしてくれませんでしたっけ、 と思ってgc.cを見ると、 if ((long)RANY(obj)->as.data.dfree == -1) { free(DATA_PTR(obj)); } else if (RANY(obj)->as.data.dfree) { (*RANY(obj)->as.data.dfree)(DATA_PTR(obj)); } となってますね。 途中で変更されたのか、僕の思い違いなのか...。 -- 前田 修吾 (mailto:shugo@aianet.ne.jp)