如何在C / Linux中检索处理器的数量?

14 浏览
0 Comments

如何在C / Linux中检索处理器的数量?

我正在编写一个使用一些线程处理数据的小型C应用程序。我想要能够知道某个机器上的处理器数量,而不使用system()和一个小脚本的组合。

我能想到的唯一方法是解析/proc/cpuinfo。还有其他有用的建议吗?

admin 更改状态以发布 2023年5月21日
0
0 Comments

为什么不使用sys/sysinfo.h?

#include 
#include 
void main () {
   printf ("You have %d processors.\n", get_nprocs ());
}

在man页上可以找到更多的信息

$ man 3 get_nprocs

0
0 Comments

正如其他人在评论中提到的那样,这个答案非常有用:

numCPU = sysconf( _SC_NPROCESSORS_ONLN );

把它留作解决方案,以供可能跳过评论的人使用...

0