gpt4 book ai didi

c++ - thread::hardware_concurrency() 检查返回零值

转载 作者:行者123 更新时间:2023-11-28 02:07:17 27 4
gpt4 key购买 nike

我正在使用 RHEL 6 64 位并在四核处理器上的虚拟机上运行。我编写了以下程序来检查硬件可以处理的线程数。

#include <thread>
#include <iostream>

using namespace std;

int main()
{
cout << thread::hardware_concurrency() << endl;
return 0;
}

结果总是零,是什么原因造成的?

最佳答案

来自 cppreference :

Returns the number of concurrent threads supported by the implementation. The value should be considered only a hint.

还有:

Return value

number of concurrent threads supported. If the value is not well defined or not computable, returns ​0​.

因此 thread::hardware_concurrency() 不必为您提供任何准确信息。
“准”也是仁者见仁智者见智。如果我有两个支持超线程的内核,hardware_concurrency 应该返回 2 还是 4

关于c++ - thread::hardware_concurrency() 检查返回零值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37000731/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com