Huch!?
Ich habe Dein Beispiel aus #24 nachgebaut und mich anweisungsgemäß gewundert.
Dort hast Du einen Timer benutzt, von Threads ist dort nichts erkennbar.
Ich habe die Demo etwas erweitert, damit man noch besser sieht, dass Application.ProcessMessages die Timer-Behandlung unterbricht und rekursiv aufruft.
Du hast doch damit angefangen!!!
(ich habe das nur etwas erweitert)
Das Eingangsproblem war doch, dass die erwartete serielle Abarbeitung trotz CS nicht funktionierte. Es ist m.E. ersichtlich geworden, dass dies durch Application.ProcessMessages verursacht ist.
EDIT: Man könnte natürlich das Beispiel noch um Threads und eine CriticalSection erweitern um die Ausgangssituation noch genauer nachzubilden, aber ich denke, das ist nicht unbedingt nötig.