什么是 std::thread::hardware_concurrency 返回?



我在阅读C++并发在行动时正在试验我的 mach 笔记本电脑,第一个示例是使用std::thread::hardware_concurrency()识别实际硬件线程的数量,在我的机器上返回 8。
但是在打印std::thread::hardware_concurrency()之前,我已经制作了一个类型并打印了00B61410std::thread::hardware_concurrency

那么std::thread::hardware_concurrency() and std::thread::hardware_concurrency有什么区别呢?后者识别了什么?

std::thread::hardware_concurrency()std::thread的静态成员函数,其中

返回实现支持的并发线程数。该值应仅被视为一个提示。

因此,您得到8是"最大连接线程"。

当你这样做时

std::cout << std::thread::hardware_concurrency << std::endl;

您正在打印函数的地址。 你得到的值基本上是没有意义的,除非你想把那个函数指针传递给其他东西。

最新更新