Zitat:
Note: The method assigned to the OnTerminate event is executed in the context of the main thread rather than the context of the thread being terminated. This means you can
access the user interface of your application safely without calling the Synchronize method.
Das heist der Hauptthread wartet noch im WaitForMultipleObjects(), OnTerminate soll aber bereits im Hauptthread ausgeführt werden.