SDL Delay: Unterschied zwischen den Versionen

Aus DGL Wiki
Wechseln zu: Navigation, Suche
K (<br>'s ...)
K (Bot: konvertiere/korrigiere <BR>)
Zeile 4: Zeile 4:
 
'''SDL_Delay''' - Der aktuelle Thread wird für eine bestimmte Zeit angehalten, bevor die Verarbeitung fortgesetzt wird.
 
'''SDL_Delay''' - Der aktuelle Thread wird für eine bestimmte Zeit angehalten, bevor die Verarbeitung fortgesetzt wird.
  
<br>
+
 
 +
 
  
 
== Delphi-Spezifikation ==
 
== Delphi-Spezifikation ==
 
  procedure '''SDL_Delay'''(''msec'': UInt32);
 
  procedure '''SDL_Delay'''(''msec'': UInt32);
  
<br>
+
 
 +
 
  
 
== Parameter ==
 
== Parameter ==
Zeile 18: Zeile 20:
 
|}
 
|}
  
<br>
+
 
 +
 
  
 
== Beschreibung ==
 
== Beschreibung ==
 
'''SDL_Delay''' pausiert den aktuellen Thread für die Anzahl der Milisekunden, die als Parameter übergeben werden soll. Diese Funktion sollte nicht zur Syncronisation von Threads verwendet werden, da nicht garantiert wird, dass die Anzahl der Milisekunden wirklich gewartet wird. So wird auf einigen Plattformen mindestens 10 Milisekunden gewartet, selbst wenn nur eine angegeben wurde. '''SDL_Delay''' ist vor allem immer dann sinnvoll, wenn man einem Thread ein wenig "Luft" verschaffen möchte, um z.B. einem anderen Thread einen Zugriff auf ein [[SDL_CreateMutex|Mutex]] zu erlauben. Einige Programmierer schwören zudem darauf, dass das bewußte Abbremsen in der Renderloop bei Notebooks die Laufzeit der Batterie erheblich verlängert, da die Grafikkarte nicht dazu gezwungen wird soviele Bilder wie möglich zu berechnen.
 
'''SDL_Delay''' pausiert den aktuellen Thread für die Anzahl der Milisekunden, die als Parameter übergeben werden soll. Diese Funktion sollte nicht zur Syncronisation von Threads verwendet werden, da nicht garantiert wird, dass die Anzahl der Milisekunden wirklich gewartet wird. So wird auf einigen Plattformen mindestens 10 Milisekunden gewartet, selbst wenn nur eine angegeben wurde. '''SDL_Delay''' ist vor allem immer dann sinnvoll, wenn man einem Thread ein wenig "Luft" verschaffen möchte, um z.B. einem anderen Thread einen Zugriff auf ein [[SDL_CreateMutex|Mutex]] zu erlauben. Einige Programmierer schwören zudem darauf, dass das bewußte Abbremsen in der Renderloop bei Notebooks die Laufzeit der Batterie erheblich verlängert, da die Grafikkarte nicht dazu gezwungen wird soviele Bilder wie möglich zu berechnen.
  
<br>
+
 
 +
 
  
 
== Beispiel ==
 
== Beispiel ==
Zeile 34: Zeile 38:
 
end.</pascal>
 
end.</pascal>
  
<br>
+
 
 +
 
  
 
== Siehe auch ==
 
== Siehe auch ==

Version vom 22. April 2006, 19:13 Uhr

SDL_Delay

Name

SDL_Delay - Der aktuelle Thread wird für eine bestimmte Zeit angehalten, bevor die Verarbeitung fortgesetzt wird.



Delphi-Spezifikation

procedure SDL_Delay(msec: UInt32);



Parameter

msec Anzahl der Milisekunden in der der Thread pausiert werden soll



Beschreibung

SDL_Delay pausiert den aktuellen Thread für die Anzahl der Milisekunden, die als Parameter übergeben werden soll. Diese Funktion sollte nicht zur Syncronisation von Threads verwendet werden, da nicht garantiert wird, dass die Anzahl der Milisekunden wirklich gewartet wird. So wird auf einigen Plattformen mindestens 10 Milisekunden gewartet, selbst wenn nur eine angegeben wurde. SDL_Delay ist vor allem immer dann sinnvoll, wenn man einem Thread ein wenig "Luft" verschaffen möchte, um z.B. einem anderen Thread einen Zugriff auf ein Mutex zu erlauben. Einige Programmierer schwören zudem darauf, dass das bewußte Abbremsen in der Renderloop bei Notebooks die Laufzeit der Batterie erheblich verlängert, da die Grafikkarte nicht dazu gezwungen wird soviele Bilder wie möglich zu berechnen.



Beispiel

uses SDL;
begin
  WriteLn('Start');
  SDL_Delay(5000); // wait for 5 seconds
  WriteLn('Finish');
end.



Siehe auch

SDL_AddTimer