Einzelnen Beitrag anzeigen

Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#4

Re: 100% CPU-Last bei TCP-Server (IdTCPServer, Indy10)

  Alt 24. Aug 2006, 08:00
Wie schon beschrieben, ich habe das Minimalprogramm nur mit dem aufgeführten Code ausgeführt. Mit den Verbindungen etc. mache ich gar nix weiter. Muss ich damit irgendetwas machen?!

@Duke_2004: Die Komponente hatte ich auf meinem normalen Programm auch drauf (weil ich das vom dem Beispiel von den Indys abgekupfert hab), aber das ganze brachte leider auch keine Änderung - weiß nicht mal genau, zu was diese Komponente eigentlich da ist.

Hat keiner für mich eine sinnvolle Lösung?!

PS: Ich habe nun einen zweiten Thread zu meinem Problem gestartet, der dieses Problem hier vielleicht etwas vereinfacht!


// --- [EDIT] --------------------------------------------------------

Ich glaube ich habe die Lösung meines Problems. Und zwar habe jetzt eine weitere Stunde gegoogelt und bin immer wieder auf das folgende gestoßen: Der Server macht keine Problem, sonst der Client fragt einfach zu oft was vom Server ab (was genau weiß ich leider nicht ) ich habe mal einen kleinen Programmauszug von dieser Website hier - Problem sollte ersichtlich sein

Delphi-Quellcode:
procedure TStatusThread.Execute;
begin
  while not Terminated do
  begin
    try
      Sleep(250); //This thread doesn't need to be active all the time. Also this line keeps the CPU out of 100%
      FClientConnected := Form_Client_Main.ChatClientSocket.Connected;
      FClientThreadTerminated := ClientThread.Terminated;
      FClientThreadSuspended := ClientThread.Suspended;
      Synchronize(UpdateClientThreadStatus);
    except
      Terminate;
    end;
  end;
end;
// --- [/EDIT] --------------------------------------------------------
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat