Использование pthread.h для сборки Windows - PullRequest
7 голосов
/ 13 ноября 2010

У меня есть кодовая база, которая широко использует pthread.h. В проекте Windows Visual Studio это, очевидно, не работает, так как pthreads - это утилита Unix.

Я знаю, что существует pthread-win32 или что-то в этом роде, но есть ли способ использовать кодовую базу, не заменяя весь код pthread?

edit: я бы предпочел не проходить и не заменять все вызовы pthread. Это мой вопрос

Ответы [ 3 ]

5 голосов
/ 13 ноября 2010

Попробуйте http://sourceware.org/pthreads-win32/. Хотя я никогда не использовал эту конкретную библиотеку, мне повезло с использованием некоторых оконных портов / уровней абстракции API POSIX.

5 голосов
/ 13 ноября 2010

Я бы порекомендовал boost как библиотеку, которая содержит независимую от платформы абстракцию потока.Я не думаю, что вы найдете какую-либо попытку вызвать сами функции pthread удовлетворительными.Также не очень сложно сопоставить pthread с Win32 для себя.

2 голосов
/ 13 ноября 2010

Если код очень сильно * основан на nix, вам, скорее всего, повезет, компилируя его с Cygwin + GCC.Если pthreads является единственной зависимостью * nix и вы хотите избежать зависимости Cygwin, то вам следует использовать Pthreads-win32 .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...