TOP - Perl - 関数 - flock

ファイルをロックする機能をエミュレートします。Windowsでも動作します。

戻り値1 = flock ファイルハンドル , 値1
戻り値1          : ロックが成功すると真、失敗すると偽を返す
ファイルハンドル : ロックの対象となるファイルハンドル
値1              : ロックの種類
                       1 : 共有ロック
                       2 : 排他的ロック
                       上記の2つはロック中のファイルにアクセスした場合は解除待ちとなる
                       これ以外にもすぐに結果を返すロックがある

(例)
open TEST_OUT, "+<test.txt";          # 読み書き両用モードでファイルをオープン
                                      # 上書きモードの場合はこの時点でファイルサイズが0となる
flock TEST_OUT, 2;
truncate(TEST_OUT, 0);                # 上書き書き込みのためファイルロック後ファイルサイズを0とする
print "[ENTER]キーを押すと処理を中止します >";
$a = <STDIN>;
print TEST_OUT $a;
close TEST_OUT;                       # この時点でflockが解除される


Copyright(C) 2006-2018 CLAYPOT. All Rights Reserved.