Здравствуйте, Блудов Павел, Вы писали:
БП>Ой зря Вы это все затеяли! ИМХО, реализовывать критические секции через mutex'ы это нерентабельно...
Рентабельность мне не нужна. Структуру RTL_CRITICAL_SECTION я знаю, но не стал ею пользоваться (а) потому что она закрытая, а мне не хочется осложнять себе жизнь написанием различных версий кода для 9x и NT; (б) потому что это все равно никак не помогло бы мне сделать то, ради чего я весь сыр-бор и затеял: мне нужна была критическая секция, работающая без инициализатора (причину я описал в самом начале комментариев). Никаких конструкторов, вызовов InitializeCriticalSection, непосредственная готовность к работе, и, заметьте, корректная работа даже в случае, когда первый же вызов Lock() будет выполнен несколькими потоками одновременно. Вы можете реализовать такое же поведение, работая с RTL_CRITICAL_SECTION?