以编程方式查找计算机上的核心数

有没有办法以独立于平台的方式肯定机器有多少来自C / C ++的内核? 若是不存在这样的事情,那么每一个平台肯定它(Windows / * nix / Mac)呢? 程序员


#1楼

OS X替代方案:根据文档,前面描述的基于[[NSProcessInfo processInfo] processorCount]的解决方案仅适用于OS X 10.5.0。 对于早期版本的OS X,请使用Carbon函数MPProcessors()。 框架

若是你是一个可可程序员,不要由于这是碳而被吓坏了。 您只须要将Carbon框架添加到Xcode项目中,而且MPProcessors()将可用。 函数


#2楼

有关OS X的更多信息: sysconf(_SC_NPROCESSORS_ONLN)仅适用于版本> = 10.5,而不是10.4。 ui

另外一种方法是HW_AVAILCPU/sysctl() BSD代码,它在版本> = 10.2时可用。 spa


#3楼

Windows Server 2003及更高版本容许您利用GetLogicalProcessorInformation函数 code

http://msdn.microsoft.com/en-us/library/ms683194.aspx orm


#4楼

在Linux上,您能够读取/ proc / cpuinfo文件并计算内核。 文档


#5楼

您可能没法以独立于平台的方式获取它。 Windows得到多个处理器。 get

Win32系统信息 io

相关文章
相关标签/搜索