Damit das RichEdit verwaltet und angezeigt werden kann, greift die
VCL (ohne Beachtung deiner CriticalSection) auch noch darauf zu
und nicht nur deine beiden Threads (mit dieser Funktion/CriticalSection).
Mit Synchronize (TThread) wird die an Synchronize übergebene Prozedur sozusagen im Kontext des Hauptthreads ausgeführt ... heißt es kann nur noch Einwas (über den Hauptthread) zur gleichen Zeit zugreifen.
Ein Therapeut entspricht 1024 Gigapeut.