06-12-2011, 02:09 PM
(06-12-2011, 01:34 PM)Sephi-Chan a écrit : Mais qu'est-ce qui s'y passe ? Tu verrouilles la table, tu entames une transaction, tu vérifies si le joueur a assez de ressources. Si oui, tu continues le processus et tu soustrait les ressource au joueur, puis tu lui donne le bâtiment. Enfin tu termines ta transaction et tu déverouilles ta table. C'est ça ?
oui et avant la transaction je change le niveau d'isolation par defaut de mysql car par defaut il permet des lectures de lignes fantomes (LEVEL REPEATABLE READ)
SET SESSION TRANSACTION ISOLATION LEVEL SERIALIZABLE
et un rollback au cas où...