flock.php
<?php
$fp=fopen('lock.txt','a');
if (flock($fp,LOCK_EX)){
fwrite($fp," HHHHHHHHHHHHHH".time()."\r\n");
}
?>
flock2.php
<?php
$fp=fopen('lock.txt','a');
if (flock($fp,LOCK_EX)){
fwrite($fp," GGGGGGGGGGGGGG".time()."\r\n");
}
?>
Zweifel:
Warum ist die Datei flock.php mit einer exklusiven Sperre gesperrt, die Sperre wird jedoch nicht aufgehoben und die Datei fclose wird nicht geschlossen. Beim Ausführen der Datei flock2.php kann sie jedoch weiterhin geschrieben werden.
Kann die exklusive Sperre der Dateisperre nach dem Sperren nicht von anderen Prozessen geschrieben werden? Kann ich erst wieder schreiben, wenn die Sperre aufgehoben wird?
php 執(zhí)行完就結(jié)束了,釋放資源了,自然就會(huì)釋放鎖
你要測試的話,flock.php 加個(gè)死循環(huán),確保永不退出,在執(zhí)行 flock2.php 看看效果