In dem Moment, wenn Du Synchronize(MainForm.UpdateLabel) aufrufst, wird der Mainthread unterbrochen.
(Ist technisch gesehen nicht ganz korrekt, aber so kann man es vereinfacht sehen.)
Wenn Du also z.B. UpdateLabel auch von einem Timer aus aufrufst, werden sich beine Aufrufe nicht in die Quere kommen.
Danke schonmal....ABER: was passiert wenn man die Methode nicht aus einem Timer aufruft, oder noch schlimmer "schon in der Methode" ist, wenn man vom Thread unterbrochen wird und der dann die Methode im "synchronize aufruft"?