Echtzeit / Stabile Zeit

Status
Nicht offen für weitere Antworten.

XXL

Mitglied
Hi!
Bei meinem aktuellen Projekt setze ich

Code:
try{Thread.sleep(10);}

ein, um einen vernünftigen Bildfluss zu bekommen ... irgentwie beobachte ich aber abnormale Geschwindigkeitsschwankungen und auch ruckeln :bloed: - den genauen Grund kenne ich nicht wirklich

jedenfalls: ich wollte ein besseres Zeitsystem - ich würde mich über jede Hilfe freuen, also z.B. auch wo man derartige infos findet bzw. wo man in dokumentation suchen muss

:###
 
am besten du würdest Timer benutzen wie z.B. den GageTimer ... damit bekommst du sehr gute Ergebnisse.
Sonst mache ich es immer folgendermaßen
Code:
public void run()
	{
		Thread.currentThread().setPriority(Thread.MAX_PRIORITY);
		
		long	startTime	= System.nanoTime();

		while ( this.bThread )
		{
			// run logic ...
                        ...
			try
			{
				startTime += TimeUnit.MILLISECONDS.toNanos( this.delay );
				long t	= TimeUnit.NANOSECONDS.toMillis( startTime - System.nanoTime() );
				Thread.sleep( Math.max(0, t ) );
			} catch (InterruptedException e)
			{
				break;
			}
		}
	}
 
ok, dass es so schlimm ist ... wusste ich nicht.
Dann nimm halt eine externe Library mit einem Timer wie z.B. den GageTimer, dann hast du den Stress nicht. 😉
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben