Oh, da habe ich eine andere Auffassung als der schöne Günther.
Ich haue die Meinung mal noch raus, mal sehen, wie das die Profis sehen...
(Der zweite Thread ist natürlich aus meiner Sicht dann auch überflüssig.)
---
Wenn Du in einer Timerbehandlung ständig MyThread.ProgressPosition ausliest und den Wert übernimmt, dann macht das der Timer ständig.
Er kann ja nicht wissen, ob es im Thread einen Fortschritt gab.
Er kann auch nicht wissen, ob der Thread gerade steht oder vielleicht schon terminiert ist.
Der Thread weiß viel besser, ob und wann eine Aktualisierung der Darstellung erforderlich ist. Und wenn der Thread fertig ist entfällt die Aktualisierung automatisch, ohne dass Du in einem Timer o.ä. noch etwas abschalten musst.
Also würde ich das im Synchronize belassen.
---