在windows build上使用pthread.h

时间:2010-11-12 23:53:31

标签: c++ c pthreads

我有一个广泛使用pthread.h的代码库。在Windows visual studio项目中,这显然不起作用,因为pthreads是一个unix实用程序。

我知道存在pthread-win32或类似的东西,但有没有办法让代码库使用它,而不替换所有的pthread代码?

编辑:我宁愿不必经历并替换所有的pthread调用。这是我的问题

3 个答案:

答案 0 :(得分:5)

我建议将boost作为包含独立于平台的线程抽象的库。我认为你不会发现任何试图将pthread函数称为满足的尝试。将pthread映射到Win32也不是很难。

答案 1 :(得分:5)

试试http://sourceware.org/pthreads-win32/。虽然我从未使用过那个特定的库,但我很幸运使用了POSIX API的一些Windows端口/抽象层。

答案 2 :(得分:2)

如果代码非常基于* nix,那么使用Cygwin + GCC编译它可能会有最好的运气。如果pthreads是唯一的* nix依赖项,并且您希望避免Cygwin依赖项,那么您应该使用Pthreads-win32