Einzelnen Beitrag anzeigen

moelski

Registriert seit: 31. Jul 2004
1.110 Beiträge
 
Delphi 2010 Professional
 
#6

Re: Das b(l)ockige ReadLn einer Konsolenanwendung - Workarou

  Alt 1. Apr 2010, 11:47
Moin Bernhard,

ich habe es jetzt hinbekommen.

Kann gleich auch mal meinen Code posten - der ist aber aufgrund der Tests noch sehr konfus

Anyway ..
Ich werte jetzt in einem Thread den InputBuffer und lese den ggf. mit ReadBytes. Das verhindert schon mal eine Blockade beim Lesen vom socket.

In der Consolenanwendung selber nurtze ich Read um Zeichen zu lesen und werte das CR & LF aus. Das Read blockt kann ich nicht bestätigen. Wenn ich nämlich im Thread zyklisch einfach was auf die Console schreibe, dann wird es angezeigt obwohl ich ein Read aktiv habe was auf ein Zeichen wartet.

Bei enter wird das Commando dann dem TIdTCPClient gegeben zum Verschicken - "gesichert" über einen TMutex.

Das klappt bis jetzt wunderbar. Ich kann eingaben machen und parallel dazu bekomme ich direkt Feedback auf der Console.
Dominik Schmidt
Greetz Dominik

I love Delphi 2007/2010
  Mit Zitat antworten Zitat