Я пытаюсь сделать Windows-версию программы, написанной для Linux, на C ++. Чтобы программа была потокобезопасной, я использую pthread_cond_t
и pthread_cond_wait
в версии для Linux. Эти функции используют мьютекс, чтобы убедиться, что ожидающий поток действительно ожидает.
Я обнаружил, что CONDITION_VARIABLE
может помочь в Windows, однако я не могу понять, почему он не компилируется. Я получаю сообщение об ошибке «ошибка:« CONDITION_VARIABLE »не называет тип», хотя, насколько я могу судить, включены все соответствующие заголовки. Я попытался скопировать код на http://msdn.microsoft.com/en-us/library/ms686903%28v=VS.85%29.aspx , который тоже не компилируется. Я использую GCC.
Есть идеи, как это скомпилировать? или любые альтернативные подходы, которые не включают condition_variables?