par
sebcap26 » 04 juin 2010, 16:12
Bon, maintenant j'ai presque tout ce qu'il faut, mais il reste encore un problème à régler : les accès concurrents.
Dans la mémoire, je stockerais les actions des utilisateurs (sous forme d'objets ou de chaine de caractères, c'est pas encore bien défini mais peu importe) dans un tableau. Chaque fois que j'ajoute une action, ca l'ajoute à la suite de mon tableau (à l'indice suivant).
Pour la lecture, aucun problème d'accès concurrent, on ne pourra pas lire une action tant qu'elle ne sera pas écrite dans la mémoire. Par contre, le problème se pose à l'écriture. Si deux actions sont écrites en même temps, une des deux va être perdue

. Il me faudrait donc protéger la section critique qu'est l'écriture d'une action.
Y'a-t-il moyen en PHP de protéger ca ? J'ai bien vu qu'il y a une librairie pour faire des sémaphores, mais j'ai pas trop envie d'installer un truc supplémentaire juste pour ca, d'autant qu'elle a pas l'air compatible windows (même si j'utilise linux, je ne veux pas avoir à tout refaire si dans le futur j'ai besoin de windaube) ... Sinon y'a-t-il moyen de faire des verrous ?
En dernier recours je ressortirais mes cours pour trouver l'algorithme des fonctions des sémaphores et les implémenter moi même, mais j'aimerais éviter.
Bon, maintenant j'ai presque tout ce qu'il faut, mais il reste encore un problème à régler : les accès concurrents.
Dans la mémoire, je stockerais les actions des utilisateurs (sous forme d'objets ou de chaine de caractères, c'est pas encore bien défini mais peu importe) dans un tableau. Chaque fois que j'ajoute une action, ca l'ajoute à la suite de mon tableau (à l'indice suivant).
Pour la lecture, aucun problème d'accès concurrent, on ne pourra pas lire une action tant qu'elle ne sera pas écrite dans la mémoire. Par contre, le problème se pose à l'écriture. Si deux actions sont écrites en même temps, une des deux va être perdue #-o . Il me faudrait donc protéger la section critique qu'est l'écriture d'une action.
Y'a-t-il moyen en PHP de protéger ca ? J'ai bien vu qu'il y a une librairie pour faire des sémaphores, mais j'ai pas trop envie d'installer un truc supplémentaire juste pour ca, d'autant qu'elle a pas l'air compatible windows (même si j'utilise linux, je ne veux pas avoir à tout refaire si dans le futur j'ai besoin de windaube) ... Sinon y'a-t-il moyen de faire des verrous ?
En dernier recours je ressortirais mes cours pour trouver l'algorithme des fonctions des sémaphores et les implémenter moi même, mais j'aimerais éviter.