Nur eine Instanz eines Java-Programms zulassen

Dieses Thema im Forum "Java/Mono/dotGNU" wurde erstellt von element, 21.05.2008.

  1. #1 element, 21.05.2008
    element

    element Guest

    Guten Morgen zusammen.

    Ich habe folgendes Problem:
    Ich möchte das mein Java-Programm nur einmal gestartet werden kann, wobei ich umgehen möchte irgendwo temporär eine "lock"-Datei anzulegen. Ist sowas möglich?

    mfg element
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. daboss

    daboss Keine Macht für niemand!

    Dabei seit:
    05.01.2007
    Beiträge:
    1.294
    Zustimmungen:
    0
    Ort:
    sydney.australia.world
    Interessante Frage... hab da grad mal bissl rumgesucht, und ausser dem Lockfile wird dazu eigentlich immer (unter anderem hier ganz unten nur vorgeschlagen, beim Programmstart auf einen Port zu verbinden. Wenn beim Programmstart der Port schon belegt ist, läuft es also schon, und wenn nicht... dann nicht ;)
     
  4. #3 karru, 21.05.2008
    Zuletzt bearbeitet: 21.05.2008
    karru

    karru OSX'ler

    Dabei seit:
    02.05.2006
    Beiträge:
    338
    Zustimmungen:
    0
    Dazu möchte ich sagen, dass ich schon einige Systeme gesehen hab, auf denen es kein Loopback-Interface gab.
    Nur so am Rande...

    Die Frage ist doch eher, warum du das überhaupt machen willst.
    Willst du Ressourcen nur einmal verwenden? Dafür gibt es doch Mutex Oder Semaphoren?
     
  5. #4 element, 21.05.2008
    element

    element Guest

    Es handelt sich dabei um ein Vertriebsprogramm in unserer Firma was aus Resourcenschonung nur einmal gestartet werden soll
     
  6. #5 bitmuncher, 21.05.2008
    bitmuncher

    bitmuncher Der Stillgelegte

    Dabei seit:
    08.05.2007
    Beiträge:
    3.171
    Zustimmungen:
    0
    Du kannst einfach die aktuelle Prozessliste beim Starten einlesen und findet sich das Programm darin, wird der Start abgebrochen.
     
  7. #6 element, 03.06.2008
    element

    element Guest

    wo lese ich die Prozessliste ein?
     
  8. #7 supersucker, 03.06.2008
    supersucker

    supersucker Foren Gott

    Dabei seit:
    21.02.2005
    Beiträge:
    3.873
    Zustimmungen:
    0
    Nicht ohne mehr Infos.

    J2SE?
    J2EE?
    Standalone-Applikation?
     
  9. #8 element, 03.06.2008
    Zuletzt von einem Moderator bearbeitet: 03.06.2008
    element

    element Guest

    J2SE 1.6.0 update 6 keine standalone applikation nur in verbindung mit javaw.exe
     
  10. #9 saeckereier, 03.06.2008
    saeckereier

    saeckereier Graue Eminenz

    Dabei seit:
    08.05.2005
    Beiträge:
    1.920
    Zustimmungen:
    0
    Ort:
    Im schönen Norden
    Leg doch einfach eine .lock Datei an.. So schwierig sollte es ja nicht sein, beim Starten die Existenz zu checken und ggf. das Programm zu terminieren. Solange es nicht sehr wahrscheinlich ist, dass das Programm zwei Mal im gleichen Moment gestartet wird sollte das ausreichend sein
     
  11. #10 element, 03.06.2008
    element

    element Guest

    Da das Programm noch nicht sehr ausgereift ist und unter umständen auch mal öfters abstürtzt da es über eine Netzlaufwerk läuft möchte ich sowas umgehen
     
  12. #11 supersucker, 03.06.2008
    supersucker

    supersucker Foren Gott

    Dabei seit:
    21.02.2005
    Beiträge:
    3.873
    Zustimmungen:
    0
    Häh, wie nun?

    Werd mal ausführlicher, wenn das Ding z.B. eine J2EE-Applikation ist, hätte sich dein Problem schon erledigt.
     
  13. #12 element, 03.06.2008
    Zuletzt von einem Moderator bearbeitet: 03.06.2008
    element

    element Guest

    Also keine J2EE Applikation
     
  14. #13 supersucker, 03.06.2008
    supersucker

    supersucker Foren Gott

    Dabei seit:
    21.02.2005
    Beiträge:
    3.873
    Zustimmungen:
    0
    Ok,

    letzter Versuch bevor ich's aufgeb.

    Wie genau startest du das Ding?

    Läuft es in einem Container wie Tomcat / Jetty / whatever?
     
  15. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  16. #14 element, 03.06.2008
    element

    element Guest

    Code:
    cd /pfad/zu/den/klassen
    /pfad/zur/java.exe paket.Klasse
     
  17. daboss

    daboss Keine Macht für niemand!

    Dabei seit:
    05.01.2007
    Beiträge:
    1.294
    Zustimmungen:
    0
    Ort:
    sydney.australia.world
    < kleine nebenbemerkung >
    /pfad/zur/java.exe ? ich würd auch mal bei gelegenheit des java "gscheid" einrichten, sonst kanns da eh noch früher oder später krachen...
    < /kleine nebenbemerkung >
     
Thema: Nur eine Instanz eines Java-Programms zulassen
Besucher kamen mit folgenden Suchen
  1. shell script nur eine instanz zulassen lock datei

Die Seite wird geladen...

Nur eine Instanz eines Java-Programms zulassen - Ähnliche Themen

  1. Nur eine Evolution Instanz starten

    Nur eine Evolution Instanz starten: Hallo, für jeden Evolution-Start bekomme ich eine neue Evolution Instanz. Das ist zwar nicht schrecklich - aber es ist auch nicht schön. Netter...
  2. Wie kann ich x Zeichen hinter einem bestimmten Wort ausgeben ?

    Wie kann ich x Zeichen hinter einem bestimmten Wort ausgeben ?: In mehreren Dateien ist immer mehrfach ein bestimmtes Wort enthalten, gefolgt von einem "=". Ich möchte mir die dahinter folgenden 10 Zeichen...
  3. Keine Benachrichtigungen im Vollbild Modus

    Keine Benachrichtigungen im Vollbild Modus: Arch Linux Plasma 5.8 Weiss einer ob das gehen sollte, bzw kann mal einer testen ob es bei ihm geht, gerne auch mit anderen kde/plasma versionen....
  4. Kontextmenü mit einem Skript verbinden

    Kontextmenü mit einem Skript verbinden: Abend, wenn ich z. B. eine simple Umwandlung eines Bildformates in ein anderes über das KDE-Kontextmenü (Servicemenü nennt es sich im KDE oder...
  5. Alle Dateien eines Verzeichnisses mit einer anderen Datei vergleichen

    Alle Dateien eines Verzeichnisses mit einer anderen Datei vergleichen: Hallo, ich habe ein Verzeichnis, darin enthalten sind mehrere Dateien. Nun möchte ich alle Dateien (Parameter $1) gegen eine konstante Datei...