Rumah > Soal Jawab > teks badan
flock.php
<?php
$fp=fopen('lock.txt','a');
jika (berkawan ($fp,LOCK_EX)){
fwrite($fp," HHHHHHHHHHHHHH".time()."\r\n");
}
?>
flock2.php
<?php
$fp=fopen('lock.txt','a');
jika (berkawan ($fp,LOCK_EX)){
fwrite($fp," GGGGGGGGGGGGGG".time()."\r\n");
}
?>
Ragu:
Mengapa fail flock.php dikunci dengan kunci eksklusif, tetapi kunci tidak dilepaskan dan fail fclose tidak ditutup. Tetapi apabila melaksanakan fail flock2.php, ia masih boleh ditulis.
Bukankah kunci eksklusif kunci fail tidak dapat ditulis oleh proses lain selepas menguncinya? Bolehkah saya menulis semula hanya apabila kunci dilepaskan?
大家讲道理2017-05-16 13:17:13
php tamat selepas pelaksanaan, sumber dikeluarkan, dan kunci akan dilepaskan secara semula jadi
Jika anda ingin menguji, tambahkan gelung tak terhingga pada flock.php untuk memastikan ia tidak pernah keluar, dan kemudian laksanakan flock2.php untuk melihat kesannya