Einzelnen Beitrag anzeigen

Aviator

Registriert seit: 3. Jun 2010
1.611 Beiträge
 
Delphi 10.3 Rio
 
#4

AW: Programm komplett laden, schnell anzeigen aber nicht von Events abhängig sein?

  Alt 21. Apr 2018, 23:23
Alles was mit der GUI zusammenhängt muss logischerweise auch dort gemacht werden. Wenn du natürlich erst die Sprachpakete/Dateien von der Festplatte laden musst, dann kannst du den Teil evtl. noch in einen externen Thread auslagern. Die Umstellung der Captions passiert aber weiterhin im MainThread. Genau so wie das Setzen der Position.

Wenn du bspw. Daten bereits zu Beginn aus einer Datenbank lädst, dann kannst du auch das in einen externen Thread packen.


Grundsätzlich sollte man eigentlich alle Aktionen die länger als eine gewisse Zeit in Anspruch nehmen in einen Thread auslagern. Dass das nicht immer möglich ist bzw. sehr viel Aufwand bedeutet weiß ich. Ich mache auch nicht jede Kleinigkeit in einem Thread. Aber gerade wenn es um Datenbankabfragen geht die etwas länger dauern können, wird das durchaus ausgelagert.

Die Bedienbarkeit deines Programmes kannst du eigentlich auch nur dann gewährleisten, wenn der MainThread/GUIThread nur für die GUI zuständig ist und alles was mit dem abholen, verändern oder speichern von Daten zu tun hat in einem eigenen, vom MainThread unabhängigen, eigenen Thread erledigst.
  Mit Zitat antworten Zitat