Kann man also festhalten Queue ist besser als Synchronize?
Zitat:
Für das Setzen eines Hints oder eine Fortschrittsanzeige ist diese Synchronizität aber gar nicht notwendig
Heißt das, ich kann FormX.ProgressBarY.Position := in einem Thread ohne Synchronize aufrufen und komplett auf Queue ausweichen?
Verstehe ich das richtig?
Synchronize synchronisiert sofort und erst wenn das fertig ist geht es nach meinem Befehl, der in Synchronize() steht weiter
und Queue packt den Aufruf in eine ART Stack, es geht aber sofort weiter?
Nur kann Queue dann nicht Probleme machen wenn man folgendes Szenario hat?
Delphi-Quellcode:
var i: Integer;
i := 2;
TThread.Queue(nil, procedure begin i := 5; end);
if i = 5 then
begin
end;
Könnte es denn jetzt passieren, dass
i := 5
ins Queue gesetzt wird aber erst so spät ausgeführt wird, dass
if i := 5
nicht zutrifft, da i ja noch 2 ist?
Oder denke ich hier falsch?