flock.php
<?php
$fp=fopen('lock.txt','a');
si (troupeau ($fp,LOCK_EX)){
fwrite($fp," HHHHHHHHHHHHHH".time()."\r\n");
}
?>
flock2.php
<?php
$fp=fopen('lock.txt','a');
si (troupeau ($fp,LOCK_EX)){
fwrite($fp," GGGGGGGGGGGGGG".time()."\r\n");
}
?>
Doute :
Pourquoi le fichier flock.php est-il verrouillé avec un verrou exclusif, mais le verrou n'est pas libéré et le fichier fclose n'est pas fermé. Mais lors de l’exécution du fichier flock2.php, il peut toujours être écrit.
Le verrou exclusif du verrou de fichier ne peut-il pas être écrit par d'autres processus après l'avoir verrouillé ? Puis-je réécrire uniquement lorsque le verrou est libéré ?
php est terminé après l'exécution, les ressources sont libérées et le verrou sera libéré naturellement
Si vous souhaitez tester, ajoutez une boucle infinie à flock.php pour vous assurer qu'il ne se termine jamais, puis exécutez flock2.php pour voir l'effet