Articles of mutex

La méthode de synchronisation d’object a été appelée à partir d’un bloc de code non synchronisé. Exception sur Mutex.Release ()

J’ai trouvé différents articles sur cette exception, mais aucun d’entre eux n’était mon cas. Voici le code source: class Program { private static Mutex mutex; private static bool mutexIsLocked = false; static void Main(ssortingng[] args) { ICrmService crmService = new ArmenianSoftware.Crm.Common.CrmServiceWrapper(GetCrmService(“Armsoft”, “crmserver”)); //Lock mutex for concurrent access to workflow mutex = new Mutex(true, “ArmenianSoftware.Crm.Common.FilterCtiCallLogActivity”); mutexIsLocked […]

Le mutex WPF pour une instance d’application unique ne fonctionne pas

J’essaie d’utiliser la méthode mutex pour autoriser l’exécution d’une seule instance de mon application. C’est-à-dire que je ne veux qu’un maximum d’une instance pour tous les utilisateurs d’une machine. J’ai lu toutes les autres discussions sur ce problème et la solution semble assez simple, mais lors des tests, je ne peux pas empêcher ma deuxième […]

Comment puis-je me débarrasser d’un mutex abandonné?

Résumé: Existe-t-il un moyen d’effacer un mutex si le processus qui l’a créé est mort et parti? Détails: J’utilise un mutex pour m’assurer qu’une seule instance de mon application est exécutée. Lors du test d’un nouveau code (pour effectuer une mise à jour automatique), j’ai exécuté Environment.Exit (0). Lors de l’exécution en mode débogage, mon […]

Comment sortir gracieusement de AbandonedMutexException?

J’utilise le code suivant pour synchroniser l’access mutuellement exclusif à une ressource partagée entre plusieurs processus en cours d’exécution. Le mutex est créé en tant que tel: Mutex mtx = new Mutex(false, “MyNamedMutexName”); Ensuite, j’utilise cette méthode pour entrer dans la section mutuellement exclusive: public bool enterMutuallyExclusiveSection() { //RETURN: ‘true’ if entered OK, // can […]

Détecter de manière fiable qu’une autre de mes applications est en cours d’exécution

J’ai deux applications, une application WinForms et un service Windows qui s’exécutent tous deux sur le même ordinateur. Je souhaite que l’application WinForms détecte de manière fiable le moment où le service est en cours d’exécution. Je contrôle totalement la conception et la mise en œuvre des deux applications. Ma première pensée a été d’utiliser […]

Comment créer un Mutex système en C #?

Comment créer un Mutex système / multiprocessus pour coordonner plusieurs processus à l’aide de la même ressource non gérée. Contexte: j’ai écrit une procédure qui utilise une imprimante de fichiers, qui ne peut être utilisée que par un processus à la fois. Si je voulais l’utiliser sur plusieurs programmes exécutés sur l’ordinateur, il me faudrait […]

Comment obtenir la propriété IdentityReference permettant à «Tout le monde» de créer MutexAccessRule sur des systèmes localisés?

J’aimerais utiliser le code comme dans cette question ou cette question pour créer un Mutex à l’échelle du système. Cela fonctionne bien sur la plupart des systèmes, mais sur une installation allemande XP, je reçois le message suivant: “Certaines ou toutes les références d’identité n’ont pas pu être traduites”. Le problème est que le groupe […]

Utilisation de Mutex en c #

Je suis un peu nouveau en threading en c # et en général, dans mon programme, j’utilise mutex pour permettre à un seul thread de pénétrer dans une section critique et, pour une raison inconnue de faire des impressions cw, je peux voir que plus d’un thread pénètre à l’intérieur ma section critique et voici […]

système nommé mutex non reconnu

J’essaye l’approche nommée système mutex pour synchroniser deux processus- service ac # windows une application de bureau c # Lorsque le mutex est créé, le processus qui n’a pas créé le mutex ne semble pas détecter le mutex existant. Ci-dessous plus en détail: Le service Windows est responsable de la création du mutex (pas de […]

mutex utilisateur C # mutex

Mon application est obligée d’utiliser un module tiers qui affichera Windows en bleu si deux instances sont démarrées simultanément sur le même ordinateur. Pour contourner le problème, mon application C # a un mutex: static Mutex mutex = new Mutex(true, “{MyApp_b9d19f99-b83e-4755-9b11-d204dbd6d096}”); Et je vérifie si elle est présente – et si donc je montre un […]