Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

AW: Datenübergabe aus Thread in MainForm

  Alt 10. Okt 2022, 20:45
Warum so schnell?
Wer liest denn 10 Mal jede Sekunde alles?
sekündlich?


Oder gibt dem Hauptthead erst wieder was, wenn er fertig ist.
z.B. der Hauptthread gibt Bescheid, wenn er fertig ist und x Millisekunden/Sekunden später wird die neue Nachricht geschickt

* der Hauptthread nutzt ein Event, um dem Thread Bescheid zu sagen

* oder der Hauptthread schreibt in eine Timer-Variable, wann er fertig ist ... x Sekunden nach dieser Zeit sendet der Thread frühestens wieder (er setzt dann diese Variable vor dem Senden auf 0, damit er weiß, das schon was raus ist)
-> Variable <> 0 und Variable+X < Aktuell -> Neues übergeben

* ODER du gibst nichts an den Hauptthread, sondern er holt es sich, wenn er Zeit hat.
Da du eh schon im Array sammelst, hast du den Cache für die Übergabe ja schon fertig.
(wenn nicht immer Daten vorhanden sind, dann kann der Thread ein TEvent setzen, damit der Hauptthread mitbekommt, wann er nach neuen Daten schauen soll ... oder alternativ nur "einmalig" eine "Hallo"-PostMessage, wenn das Array grade seinen ersten (neuen) Eintrag bekommt)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat