Einzelnen Beitrag anzeigen

blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#4

AW: Pipe EOF abfragen oder so :)

  Alt 19. Nov 2010, 13:02
Ich glaub, ich hab jetzt ne Ahnung wieso das nicht geht. {3} und {4} gehen leider nicht, weil ReadFile einfach blockiert statt einen Fehler zurückzuliefern sobald das Programm beendet wurde.
Und {1} und {2} funktionieren prinzipiell, allerdings muss bei beiden länger gewartet werden. Also muss ich bei WaitForSingleObject() die TimeOut-Zeit hochsetzten oder vor GetExitCodeProcess() ein Sleep() setzen, dann gehts (jedenfalls meistens...).
Denn ich vermute es ist vereinfacht so:
ReadFile() benötigt im Normalfall angenommen 1ms. Wenn ich dann bei {1} oder {2} 99ms warte, dann führt der Thread beim Beenden des Programms zu 1% gerade das ReadFile aus und zu 99% {1} oder {2}. Somit wird es zu 1% blockiert und funktioniert zu 99%.

Ich versteh nur nicht wieso das ReadFile blockiert, das ist doch beschissen
  Mit Zitat antworten Zitat