Bonjour à tous !
Je développe une application multi-utilisateurs (et multi-postes). J'utilise une base de donnée relationnelle centrale.
Dans cette base de donnée j'ai une table qui contient une liste de choses à traiter. Chaque ligne étant une chose à traiter. Je ne rentre pas plus dans le détail, je ne pense pas que celà soit utile.
J'ai besoin que plusieurs utilisateurs puissent traiter des choses simultanément mais pas qu'ils traitent la même chose simultanément.
J'aurais donc besoin d'un "truc" (ou d'un bidule, peu importe) qui me permettrait de marquer une ligne comme étant "en cours de traitement" et serait donc exclu temporairement des choses à traiter. Je pourrais donc ajouter un champ booléen dans ma base de donnée pour savoir si une chose est en cours de traitement, mais j'entrevois deux problèmes :
- Rien n'empêche que plusieurs utilisateurs accèdent au même moment à une chose à traiter et qu'ils la marquent comme étant "en cours de traitement". Une fois marquée la chose n'est plus accessible aux autres mais en cas de demande simultanée c'est foireux.
- Si un client plante pendant son temps de traitement la chose à traiter n'est plus jamais accessible.
Je vous remercie d'avance pour votre aide
Partager