Namazu-users-ja(旧)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Too many open files



寺西です。

knok@xxxxxxxxxxxxx wrote:
> 
> At Tue, 06 Jan 2004 13:57:42 +0900,
> Tadamasa Teranishi wrote:
> > この話は perl 5.8 の destructor でファイルのクローズがうまくいって
> > いないバグがあるのではないかということでしょうか?
> 
>   それに近い話です。my 変数が scope からはずれても即座には破棄されない
> のかなあ、という気がしています。以前もそれが原因による問題らしきものに
> 遭遇した記憶があり、pdf.pl では結局陽に undef しています。

なるほど。my 変数が scope から外れても生き続けていて、destructor が
呼ばれていないって可能性ですか。

仮にそうだとすると、今回のような問題は起きそうですね。
 
> > ところで Namazu は最大どれくらいのファイルを同時にオープンするの
> > でしょうね。(状況にもよりますが)
> 
>   改めてコードをざっと見返してみましたが、基本的には極力短い scope の
> なかで open/close するようになっているようです。期待どおりであれば本来
> こういう事態は起きないはずなのですが...

scope から外れてもすぐには destructor が呼ばれず、生き続けるという
のが仕様ならば、ちょっと対策を考えないといけないですね。
# ガベージコレクションで、まとめて後で殺されるって仕様なのかな。

少なくともファイルのクローズは destructor に頼るのではなく、自前で
やらないといけないのかもしれませんね。
-- 
=====================================================================
寺西 忠勝(TADAMASA TERANISHI)  yw3t-trns@xxxxxxxxxxxxxxx
http://www.asahi-net.or.jp/~yw3t-trns/index.htm
Key fingerprint =  474E 4D93 8E97 11F6 662D  8A42 17F5 52F4 10E7 D14E