Datei zu Hintergrundprozess senden



  • Hallo,

    ich habe eine kleines Problem bezüglich Hintergrundprozessen. Ich habe in einem Programm "A" eine Listview mit Dateipfaden.

    Pro Dateipfad wird folgender Befehl auf OSX ausgeführt:

    ./programmB -give=dateieintrag

    Programm B wird daraufhin gestartet, lädt die Datei ein, berechnet etwas und schließt sich danach wieder. Sowiet so gut, jedoch braucht Programm B zum starten zwischen 20-30 Sekunden zum starten, wobei die Berechnung jeweils nur 1-2 Sekunden braucht.

    Jetzt habe ich mir folgendes überlegt, ich starte das Programm B im ersten Eintrag wie folgt:

    ./programmB &

    Mit dem & Operator schiebe ich es in den Hintergrund. Ich habe Programm B jetzt umgeschrieben, so dass es die Berechnung ausführt sobald eine neue Datei geöffnet wird (also auch ohne Übergabe von Parametern).

    Nur wie schicke ich eine Datei an einen Hintegrrundprozess. Ich müsste wissen, inwieweit beispielsweise der Desktop dies macht. Ich starte ein Programm und wenn ich auf eine Datei auf dem Desktop klicke, sendet er diese Datei ja auch an den schon existierenden Prozess (bei den meisten Programmen) ohne das eine neue Instanz geöffnet wird.

    Ich bedanke mich rechtherzlich 🙂



  • keiner eine Idee?



  • Ich denke, dass durchaus eine neue Programminstanz gestartet wird. Diese überprüft, ob bereits eine Instanz läuft (unter Windows z.B. mit einem Mutex) und falls ja, die erste Instanz dazu auffordert, die Datei zu laden (über pipes, shared memory, sockets) und sich dann wieder beendet. Das ganze muss natürlich vor der scheinbar recht aufwändigen Initialisierung geschehen, damit es Sinn macht.


Anmelden zum Antworten