AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Timer für "threaded environments"

Ein Thema von hirnstroem · begonnen am 18. Dez 2006 · letzter Beitrag vom 19. Dez 2006
Antwort Antwort
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#1

Re: Timer für "threaded environments"

  Alt 18. Dez 2006, 15:07
Da reicht doch eine einfache Sleep-Funktion:
Delphi-Quellcode:
const
   DELAYTIME=(1.0/24.0/60.0*5); // 5 Min
var
   nextrun : TDatetime;

nextrun := Now+DELAYTIME;
while True do
begin
   Sleep(1000);
   if Terminated then Exit;
   if Now > nextrun then
   begin
      nextrun := Now+DELAYTIME;
      // und hier findet nun die grosse Aktion statt
      ...
      if Terminated then Exit;
   end;
end;
Der Thread wacht ungefähr einmal in der Sekunde auf und schaut, ob er selbst terminiert wurde
und ob es schon Zeit ist, die Aktion auszuführen.
Nach der Aktion wird nochmals geschaut ob der Thread schon terminiert ist, denn wir möchten
ja nicht eine weitere Sekunde warten.
Andreas
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:47 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