在 Visual Studio 中使用信号量

Using Semaphores in Visual Studio

我正在尝试将 Visual Studio 中的信号量用于一个项目。

但是,我收到错误 C1083:无法打开包含文件:'pthread.h':没有这样的文件或目录

有没有办法下载信号量?

我也试过包含 pthread 目录,但我得到了同样的错误

听起来您正试图在 windows 上编译 *nix 代码。这并非不可能,但 Visual Studio 不会有太大帮助。

pthreads 来自POSIX 标准,Windows 对POSIX 的支持不是特别好。已经做出一些努力将 POSIX 移植到 windows,Cygwin 可能是最成功的,而其他人则试图在 GCC 编译器家族的附加库中实现它们所能做的。

Visual studio主要支持微软的做事方式。有道理,那是他们的面包和黄油。 POSIX 支持很少。有人可能已将 pthreads 移植到 Visual Studio,但我不能推荐任何。

因此,您可以移植使用 pthread 的程序或库以使用 Win32 等效项或 select 包装 pthread 的不同编译器工具包。如果不查看您需要移植的代码,这可能是微不足道的,也可能不是微不足道的。

MinGW will probably compile the program or library,但我不能保证这一点。 Unix 和 Windows 世界在保证方面差异太大。您还必须将 Visual Studio 作为 IDE 丢弃。