Da hatte ich ja das richtige Gefühl, dass es nicht an Windows liegt.
Ganz so eindeutig ist die Schuldfrage hier aus meiner Sicht nicht, Luckie. Immerhin wurde eindeutig etwas an Windows verändert. Analogum: Die neuen Styles übernehmen ab Windows Vista (?) das Neuzeichnen meistens, man kann demnach ein beschäftigtes Single-Thread-Programm nicht mehr wie früher "weißwischen". Wenn ein Programmierer für Windows bis XP sich darauf einstellt und später dieses Neuzeichnen für den Programmablauf wichtig ist, es aber fehlt, ist er dann "schuld"? Programmierer sind einen erheblichen Teil ihrer Arbeitszeit damit beschäftigt, ihre Programme an die neusten Eigenheiten des jeweiligen Betriebsprogrammes anzupassen, ja, sich die nötigen Informationen dazu erstmal zu beschaffen, aber wem sage ich das?
Daß in dem einen Falle das Einbetten einer Synchronize-Prozedur (die m.E. per se "kritisch geschützt" ist) nötig ist, nämlich beim Multithreading-Mergesort, in dem anderen Falle, beim Multithreading-Quicksort hingegen in neueren Windows (wohl ab Windows 7) die Gleichzeitigkeit bis zur völligen Serialität (immer nur ein Thread anscheinend aktiv) abmindert, darauf muß man erstmal kommen. Ich kam nicht gedanklich, sondern letztlich nur über Experimente darauf.
Jedenfalls funktioniert es jetzt so, wie ich es beabsichtigte, auch in modernen Windows. Daniels Hinweis mit der CriticalSection führte mich auf die entscheidende Fährte. Vielen Dank Euch allen!