soul_rebel
ist immer auf der flucht
also ich führe durch eine io-pipe mit popen() einen systembefehl aus meinem c++ programm aus. dieser befehl wird auch im hintergrund ausgeführt und mit
kann ich zeile für zeile den output des systembefehls auslesen bis dieser einen rückgabe wert liefert (also terminiert). wenn der prozess aber arbeitet (keinen output liefert aber auch nciht terminiert), bleibt das programm bei fgets stehen bis neuer output kommt oder das programm terminiert. im klartext ALLES bleibt stehen, oberfläche freezed etc - ist ja klar.... nur was kann ich dagegen tun? der auslese prozess muss auch in irgendwie hintergrund....brauch ich dazu threads? wenn ja kennt jemand ein einfaches beispiel, oder dokumentation wie man ein paar zeilen code in einen thread packt?
Code:
while (!feof(pipe))
{
fgets(buffer,250,pipe);
}
Zuletzt bearbeitet: