17

fopen()ファイルが存在するが、現在は?でロックされている場合は失敗しますLOCK_EX

または、ロックを開いてから、ロックを設定して、ロックがすでに存在するかどうかを確認する必要がありますか?

私もそのflock()意志を読みました。

ロックが無期限に取得されるまで、またはスクリプトがタイムアウトするまで、[スクリプト]を一時停止します

http://www.php.net/manual/en/function.flock.php#95257

もしそうなら、この「一時停止」はバイパスすることができますか?

if (!flock($f, LOCK_SH | LOCK_NB)) {
    // file locked, do something else
}
4

1 に答える 1

12

flock()実際には、ファイルの読み取り/書き込みを妨げるものではなく、ロックのアイデアを他のスクリプトに「伝達」できるようにするだけです。投稿したスニペットを使用して、ファイルにロックがあるかどうかを検出できます。

于 2010-06-30T13:21:37.040 に答える