Здравствуйте, Denwer, Вы писали:
D>Это тоже расточительно по сравнения с интерлокед функциями.
Не, не расточительно, в том случае, если переменную фактически использует только один поток и они не пытаются использовать ее одновременно. Тогда EnterCriticalSecton — просто десяток ассеблерных команд без всяких жутких усыплений.
Правильно работающая программа — просто частный случай Undefined Behavior