J'écris un programme C# qui surveille un compte Gmail dédié à l'aide de POP3 pour les courriels de commande spécialisés et réagit de manière appropriée.Synchronisation du moniteur de messagerie électronique
Pour une fiabilité maximale, je vais exécuter ce programme sur plusieurs ordinateurs à travers le pays. J'ai actuellement une condition de concurrence où deux instances du programme peuvent lire le même message avant que l'un d'entre eux le supprime, provoquant le traitement du message deux fois.
Comment puis-je m'assurer que chaque commande est traitée exactement une fois?
L'accès POP3 de Gmail ne servait à chaque fois qu'une seule fois (faisant de RETR et DELE une seule opération atomique), mais je ne peux plus reproduire ce comportement.
La seule méthode de communication entre les ordinateurs est un SQL Server et un serveur HTTP (que je contrôle).
Dans tous les cas, cela semble être la seule solution réalisable dans les circonstances avec lesquelles vous devez travailler. – jerryjvl
un exemple de code en C# ?? – Kiquenet