Ich habe mein Progi mit MemProof getestet. Dem Ergebniss glaube ich nicht ganz. Das System wird überlastet, wenn die Threads Dalay-Pocedur aufrufen.
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9:
| procedure TForm1.Delay(MSec: Longint); var Start, Stop: Longint; begin Start := GetTickCount; repeat Stop := GetTickCount; Application.ProcessMessages; until (Stop - Start ) >= msec; end; |
Wenn die procedur aufgerufen wird, steigt die CPU-Auslastung auf 100%, wenn die Pause vorbei ist, steigt diese auf 2% ab. Was ist das den?
Kann diese Procedur so viel Recourcen brauchen? Wie kann ich sonst die Pause zwieschen Thread-Wiederholungen realisieren?
Moderiert von
Tino: Code- durch Delphi-Tags ersetzt.