Home

技術系のメモと日々の雑感

Perl の flock

あんまり集中せずに Perl のソースを触っていたら

flock() on closed filehandle FH at (eval 2) line 1.

という初めて見るメッセージが。
あ、close とロック解除の順番が逆になってるってことか。
親切だな〜。
ところで

eval "flock(FH, 8);";
close(FH);

って書いた場合、CGI なんかだと、アクセスが集中したときにロック解除と close のごくわずかな間に別プロセスが割り込む可能性があるんじゃないかな。
だったら、ロック解除は close に任せてしまった方がいい?
考えすぎか。

この記事に対するトラックバック

この記事のトラックバックURL

この記事に対するコメント

この記事にコメントする

管理者にだけ表示を許可する