AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TJvTimer

Ein Thema von Luckner · begonnen am 4. Okt 2016 · letzter Beitrag vom 5. Okt 2016
 
Benutzerbild von himitsu
himitsu

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

AW: TJvTimer

  Alt 4. Okt 2016, 15:56
Die VCL ist per se nicht threadsave, daher darf man niemals unsynchronisert darauf zugreifen, da es immer zu Problemen kommen kann.

Einiges der VCL nutzt ausschließlich Messages (nur ein SendMessage in der Methode ... dann synchronisiert sich das "zufällig" von selber)


Wie sonst soll man einen Fortschrittsbalken steuern?
TThread.Synchronize, TThread.Queue, threadsichere Listen, Windows-Messages oder ähnliches.
Oder aucg Events im Thread setzen und in der VCL (z.B. Timer) reagiert jemand da drauf und liest das Ergebnis synchronisiert aus, wenn er Zeit hat.

SendMessage der besser PostMessage ... 'ne ProgressBar ist ja auch nur 'nen Windows-Control und da kennt die WinAPI eine pasende Message, um das zu steuern.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 4. Okt 2016 um 15:59 Uhr)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:08 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz