![]() |
Re: Thread Vs Timer !!! Wievile Threads sind zu viel ?
Hi Luckie,
aber ich kann den Thread mit suspend anhalten(wenn er gerade schläft) ? Na dann habe ich glaub ich mein Problem gefunden, warum meine App sporadisch sich mit der CPU-Last auf 98% hochschaukelt, wahrscheinlich kommt der Systemprocess nicht mehr mit dem Thread-Handling nach. Ich habe nämlich ca. 10-15 Threads immer am laufen, die wie oben in Bsp. 1 beschrieben vorgehen nur ist der Sleep-Intervall da bei 500 ms bzw. 200 ms. :oops: :oops: Danke, Data |
Re: Thread Vs Timer !!! Wievile Threads sind zu viel ?
Versuch es mal mit Events und WaitForSingleObject.
Erstelle mal ein Bsp. Interessiert mich gerade selber! Geduld! |
Re: Thread Vs Timer !!! Wievile Threads sind zu viel ?
Zitat:
|
Re: Thread Vs Timer !!! Wievile Threads sind zu viel ?
Delphi-Quellcode:
Das könnte dir Helfen...
type
TTimerThread = class(TThread) private hClose : Cardinal; public constructor Create; destructor Destroy; override; procedure CloseMe; procedure Execute; override; end; { TTimerThread } procedure TTimerThread.CloseMe; begin SetEvent(hClose); end; constructor TTimerThread.Create; begin inherited Create(false); hClose := CreateEvent(nil, true, false, nil) end; destructor TTimerThread.Destroy; begin CloseMe; // schleife beenden CloseHandle(hClose); inherited; end; procedure TTimerThread.Execute; var dw : Cardinal; begin repeat dw := WaitForSingleObject(hClose, 60000); if dw = WAIT_TIMEOUT then Windows.Beep(200, 200); // mache irgentwas until (dw = WAIT_OBJECT_0) or Terminated; // beendet end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:30 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz