Anwendung schon geöffnet



  • Hallo,

    gerne würde ich verhindern, dass meine Anwendung gestartet wird, wenn sie bereits läuft (unter Linux-only). Leider ist mir nicht bekannt, wie dieses "Verfahren" genannt wird, sodass die Suche sich als wengier erfolgreich erwies, auch wenn ich mir sicher bin, dass das schon mehrmals gelöst wurde.

    Danke schonmal.
    mfg rabby



  • Du kannst z.B. eine lock-Datei in tmp anlegen.
    Und dann beim Start überprüfen ob diese bereits da ist,
    wenn ja -> error message "Applikation läuft bereits"
    wenn nein -> lock Datei anlegen
    Und beim Beenden die lock-Datei natürlich wieder löschen.



  • Für Programme mit root-Rechten sind dafür übrigens Dateien in /var/run üblich, da steht dann die PID des laufenden Prozesses drin.



  • Eine weitere Möglichkeit ist die Verwendung von D-Bus. Damit könntest du dann auch gleich mit dem bereits laufendem Prozess kommunizieren, damit er die Aufgabe macht, die der neue Prozess eigentlich machen sollte (z.B. eine Datei öffnen).


Anmelden zum Antworten