Perlについての質問箱 4箱目
■ このスレッドは過去ログ倉庫に格納されています
0673デフォルトの名無しさん
NGNGflockに関してなのですが、ファイルをロックする時その対象は「ファイルハンドル」になると聞きました。
別々のCGIスクリプトから同一のファイルをopenし、その時それぞれのスクリプトで違うハンドルをつけていたらどうなるのでしょうか。
具体的には以下のような感じです。
#===CGI 1===
open(FILE, "+< ./file.dat");
flock(FILE, 2);
truncate(FILE, 0);
seek(FILE, 0, 0);
print FILE "あいうえお";
close(FILE);
#===CGI 2===
open(DATA, "+< ./file.dat");
flock(DATA, 2);
truncate(DATA, 0);
seek(DATA, 0, 0);
print DATA "かきくけこ";
close(DATA);
まあ例えば上記のような2つのスクリプトがあって、これがほぼ同時に実行された場合ですね。
これだとファイルハンドルが違うから、きちんとロックされないことになるんでしょうか。
それともファイルハンドルは関係なく、対象になるファイルはロックされるんでしょうか。
よろしくお願いします。
■ このスレッドは過去ログ倉庫に格納されています