Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.078 Beiträge
 
Delphi 12 Athens
 
#14

Re: Priorität einer Anwendung

  Alt 8. Mär 2005, 10:36
Also, wenn das so ist, dann last doch
a: das Programm in einer Schleife laufen, oder
b: stellt den Timer auf 20 ms ein (ist so das Kleinste, was TTimer kann)
(b ist dabei ja auch sowas wie eine Schleife ^^)

Delphi-Quellcode:
var MerkeZeit: irgendeinIntegertyp := 0;


Repeat // die Schleife ... oder Begin der Timerprozedur
  If MerkeZeit = AktuelleZeit Then Countinue; // oder Exit, bei der Prozedure
  MerkeZeit := AktuelleZeit;

  ... was auch immer (etwa Sekündlich)

Until ; // die Schleife ... oder End der Timerprozedur

Wenn Zeiten ni´ch in Sekunden vorhanden sind, dann muß halt entsprechend scaliert werden

z.B. Zeiten in Millisekunden:
Delphi-Quellcode:
  If MerkeZeit = AktuelleZeit div 1000 Then Countinue; // oder Exit, bei der Prozedure
  MerkeZeit := AktuelleZeit div 1000;



Wenn die Schleife also oftgenug aufgerufen wird, dann ist die Chance geringer, dass etwas verpasst wird.



Oder ihr macht es so, wie bisher, aber merkt euch die letzte Zeit, als euer Code ausgeführt wurde, wenn ihr dann das mit der aktuellen Zeit vergleicht, wisst ihr ja, wieviele der "letzten" Sekunden noch bearbeitet werden müssen, somit wird auch nichts vergessen.

Wie gesagt, Echtzeit gibt es bei Windows nicht und ihr müßt immer mal damit rechnen, dass mal euer Programm ein bissl ins stocken kommt.

[edit]
wieso ist der Beitrag nicht das 1. Mal eingefügt wurde? (zum Glück war alles nochim Speicher -.-'' )

[]
Bitte bitte ... manchmal sieht man halt den Wald vor Bäumen nicht
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.