[.net] Gesucht: Prozess├╝bergreifende Synchronisierung, die nicht unter AbandonedMutexException leidet


Answers

Sieht aus wie EventWaitHandle tut was ich will. Es hat einen Konstruktor, der einen Namen hat, also ist es perfekt für die prozessübergreifende Synchronisierung, und es hat dieses Problem nicht.

Question

Ich habe mehrere Threads, die Mutexes erwerben und dann beenden.

Die Mutexe werden in einem Haupt-Repository gespeichert und ordnungsgemäß freigegeben, wenn das Programm existiert. Wenn jedoch der Thread, dem ein Mutex zugeordnet wurde, existiert, wird der Mutex automatisch freigegeben, und anschließend wird AbandonedMutexException erworben (auch gemäß der Dokumentation ).

Wie kann ich diese Ausnahme vermeiden und einen Mutex auch nach Beendigung des Zuweisungs-Threads verwenden? Gibt es ein anderes, geeigneteres Synchronisierungskonstrukt in .Net, das diese Einschränkung nicht aufweist.

Hinweis - Ich suche nach einem prozessübergreifenden Synchronisationsmechanismus mit ähnlicher Semantik wie Mutex.