Buchempfehlung
Windows-Programmierung. Das Entwicklerhandbuch zur WIN32-API
Windows-Programmierung. Das Entwicklerhandbuch zur WIN32-API
"Der" Petzold, das über 1000 Seiten starke Standardwerk zum Win32-API - besonders nützlich u. a. bei der GUI-Programmierung in FreeBASIC! [Mehr Infos...]
FreeBASIC-Chat
Es sind Benutzer im FreeBASIC-Chat online.
(Stand:  )
FreeBASIC bei Twitter
Twitter FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!

Tutorial

Threading-Optimierung - Teil 2

von MitgliedThePuppetMasterSeite 5 von 5

Darstellungsengpass und Fazit (oder so)

Nächster Punkt wäre dann die grafische Darstellung. Wie soll man eine Teilberechnung und Teilsperrung in einen grafischen Kontext bringen?

Das grafische Umsetzen der im Speicher vorgenommenen Berechnungen ist ein weiterer Engpass in dieser Simulation. Unsere Berechnungen sind zwar deutlich angestiegen, jedoch müssen diese als Gesamtheit auf den Bildschirm.

Der Ansatz einer Teilzeichnung ist hier möglich, aber nicht ratsam, da es einfach zu Stockend und Ruckeln wäre, aufgrund der nicht vorhersagbaren Teilsperrung.

Hierfür gibt es eigentlich nur eine Kosten-Nutzen Möglichkeit. Die Vollsperrung.
Dies mag total Unsinnig erscheinen, aber betrachtet man mal die Hintergründe, ist es durchaus Vertretbar.

Hintergrund: Wir berechnen die Simulation nun mit rund 1300 Berechnungen pro Sekunde. Unser Auge sieht jedoch nur ca. 50 Bilder pro Sekunde.

Ist es also vertretbar, eine Vollsperrung zu nutzen, und damit ca. 100 Berechnungen zu verlieren im Vergleich zu einem 200 Frames Rechenmodell ... Ich würde sagen, JA.




Ich hoffe, das Ich euch ein paar Ansätze vermitteln konnte, wie man aus scheinbar parallelen Thread Abläufen halbwegs passable Thread Abläufe produzieren kann.
Und, dass Ihr diese auch sinnvoll einsetzen könnt.

Wie immer gilt: Probleme und Hilfe, Lob und Kritik, kann im Http://forum.qbasic.at gepostet werden.


MfG + HF
TPM

 

Gehe zu Seite Gehe zu Seite  1  2  3  4  5  
Zusätzliche Informationen und Funktionen
  • Das Tutorial wurde am 05.05.2010 von MitgliedThePuppetMaster angelegt.
  • Die aktuellste Version wurde am 27.05.2010 von Mitgliedfrebas gespeichert.
  Bearbeiten Bearbeiten  

  Versionen Versionen