Heim >Backend-Entwicklung >C++ >Wie implementieren Sie eine einzelne WPF-Anwendung mit Mutexes?
Die korrekte Methode zum Erstellen einer einzelnen Instanz -WPF -Anwendung
In der Entwicklung von .NET WPF stellt sicher, dass die Anwendung nur eine einzelne Instanz ausführen kann, um das Konzept der gegenseitigen Verriegelung zu verstehen. Gegenseitige Sperren (oder gegenseitig ausschließende Objekte) sind ein Synchronisationsmechanismus, der verhindern, dass mehrere Threads oder Prozesse gleichzeitig auf gemeinsame Ressourcen zugreifen.
Um eine einzelne Funktion zu erzielen, befolgen Sie bitte die folgenden Schritte:
Erstellen Sie ein gegenseitiges Sperre
Mutex.WaitOne()
: Wenn ein Beispiel vorhanden ist, verwenden Sie bitte Win32 -Nachrichten (über true
), um benutzerdefinierte Nachrichten zu senden, um die Instanz zu aktivieren. Verwenden Sie , um die benutzerdefinierte Fensternachricht zu registrieren und die false
abzudecken, um die Nachricht anzuhören. PostMessage()
Behandlung der zweiten Instanz RegisterWindowMessage()
: Wenn die zweite Instanz aktiviert ist, wird versucht, ein gegenseitiges Sperren zu erhalten, aber es wird fehlschlagen. Es sollte keine Fehlermeldungen angezeigt, sondern die vorhandenen Beispiele benachrichtigen und beenden. WndProc()
PostMessage()
Bitte beachten Sie, dass hier die -Klasse weggelassen wird, da er den Plattform -bezogenen Code enthält. Sie müssen sich entsprechend Ihren Bedürfnissen erreichen.
Es muss auch durch eine eindeutige Kennung ersetzt werden, z. B. die Richtlinien Ihrer Bewerbung.Das obige ist der detaillierte Inhalt vonWie implementieren Sie eine einzelne WPF-Anwendung mit Mutexes?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!