Ich habe alle Stellen ausgetauscht gegen SRWLOCK und CONDITION_VARIABLE, die seit Windows 2008 bzw. Vista unterstützt werden (nicht unter XP oder W2003 bzw. älter). Der neue Code ist fast identisch zu dem Alten.
Achtung: Das ist nur ein Beispiel. Fehlerbehandlung (Return Codes, Exceptions,...) habe ich in diesem Beispiel nicht beachtet, mal abgesehen von Deadlocks.