+1 au compteur

Répondre
LupusMic
le 29/01/2006 à 17:36
LupusMic
Pour préciser le problème du lock sous Microsoft Windows : le lock des fichiers est en général obligatoire, parce que Apache fonctionne en environnement multithread.

Que PHP fournisse un mécanisme de lock ne veut pas dire qu'il est obligatoire. Posix fourni aussi les locks, mais il faut les demander explicitement.

En lisant le code source de PHP 5.1, on ne voit nul part que PHP lock le fichier avant de le lire et de l'écrire.

En ce qui concerne ton protocole, es-tu certain que la première exécution du script n'était pas finie lors du démarrage du second ? J'ai mis volontairement un nombre important pour m'assurer que j'aurais le temps de lancer les suivants. Mais ça peut ne pas suffire si tu as un processeur supérieur.

Ensuite, le bogue que je constate me fait penser à celui de l'entier incrémenté dans le registre processeur et pas mis à jour dans la RAM, entraînant la nécessité d'utiliser le mot clé « volatile ».

Bon, je vais compléter le script de manière à contrôler le début et la fin de l'exécution, et vous posterais le code dans le Wall.

À+
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
Bzh
le 29/01/2006 à 21:14
Bzh
Une debian ??? Vraiment bizard ...

Pour ce qui est de l'ordre... Si je lance 10fois le script simultanément, il se terminera toujours dans le même ordre... Avec exactement la même durée d'exécution.Je peux rajouter un chrono si tu le souhaite...

Tu dis que php ne gère pas le lock !!! Es-tu bien sur ??? Je suis vraiment étonné.

Puisque l'ordre est respecté, cela met bien en évidence les locks...

Enfin, tiens nous au courrant. Ca m'interresse...

Bye...
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours