@Angel4585:
Wenn sich ein Client zum Server verbindet werden folgende Events ausgelöst:
- ONConnect
Solange der Client verbunden ist immer wieder :
- OnExecute
und danach OnDisconnect.
Seit Indy10 sollte auch nicht mehr für jede Verbindung ein Thread verwendet werden,
dafür ist der Scheduler ja da
Du sagst Du testest die Kommunikation zwischen Client und Server ?!
Hast Du beides(TIdTcpClient u. TIdTCPServer) in der gleichen Anwendung/Form ?
Das TAntifreeze hast Du ja schon gefunden
Hast Du auch die Property "ApplicationHasPriotity" auf "true" und "OnlyWhenIdle" auf "false" gesetzt ?
Wie sieht den Dein Code-Gerüst des OnExecute vom Servers aus ?
Folgende Befehle könnten Dir auch nützlich sein :
Delphi-Quellcode:
if AContext.Connection.IOHandler.InputBufferIsEmpty // ....
AContext.Connection.IOHandler.CheckForDataOnSource(2500); // Intervall nach Belieben
AContext.Connection.IOHandler.CheckForDisConnect;
Ich habe auf jeden Fall mit Indy10(Version 10.2.3) einige Dienste auf verschiedenen Server-Systemen laufen,
die teilweise über eine Million Anfragen an Tag behandeln.
Die laufen mit 0-2% CPU-Last und ohne Speicherleck.
Greetz Data
Der Horizont vieler Menschen ist ein Kreis mit Radius Null, und das nennen sie ihren Standpunkt.