C++ Programm mit Zugriff auf Konsole



  • Hi,
    ich will ein C++ Programm schreiben, welches mehrere Prozesse in Linux startet (auf der Konsole), und gleichzeitig während diese Prozesse noch laufen die Ausgabedateien der Prozesse auswertet.

    Mit system() geht es nicht da mein Programm dann ja solange hängt bis system() fertig ist was ich ja nicht will. Eine Möglichkeit die ich mir gedacht habe ist den system(9 Aufruf in einen extra Thread auszulagern würde das funktionieren?

    Als zusätzliche Schwierigkeit kommt hinzu das ich mehrere Prozesse starten will, die dann jeweils eine Konsole blockieren, also brauche ich mehrere Konsolen.
    Erzeugt System bei jedem Aufruf eine eigene Konsole? Dann müßte es ja theoretisch möglich sein einfach X-Threads aufzumachen?

    Falls mir jemand folgen konnte, wäre ich sehr dankbar für Tipps.
    (Ich erwarte keine Lösung, sondern nur einen schubs in die richtige Richtung :-))



  • Du brauchst dazu fork und exec . Unter Linux wird keine neue Console erzeugt. Du kannst aber ein neues Consolen-Fenster ( != Console) öffnen und darin deinen Prozess starten. Du musst dann einen Terminal-Emulator starten und anweisen, dein Programm darin zu starten.


Anmelden zum Antworten