所以我试图在 Visual Studio 2019 和 2022 中使用counting_semaphore,但我得到的只是“std 没有成员counting_semaphore”。
在单个组件中添加了 clang 11 后,我在 Visual Studio 2019 中尝试了它,但我仍然遇到同样的错误。然后我就觉得它不支持 C++20。所以我想也许这就是它不起作用的原因。
然后我看到 Vs2022 Preview 支持 C++20。所以我安装了它,包括在内,但我仍然无法执行“std::counting_semaphore<5> slot(5);” 正如它所说的std没有一个叫做计数信号量的成员。
我还在 2022 预览版安装程序的各个组件中安装了 clang12,但我仍然没有让它工作。
我不确定我做错了什么。
我在网上看到例子:
https://www.modernescpp.com/index.php/semaphores-in-c-20 https://en.cppreference.com/w/cpp/thread/counting_semaphore
告诉如何使用它,但是当我将代码放入 vs 时,它就不起作用了。
我可以在#include 上执行“查看代码”,它显示了counting_semaphore 的实现,但我不能使用它!!!
请有人澄清我做错了什么!!!