随着多核cpu的普及, 程序中有必要考虑利用多核的优势来提高性能。 比如当创建线程池或者进程池的时候,可以根据系统cpu的个数来设定线程池/进程池的大小。
以下代码示例如何获取cpu的个数。
typedef void (winapi *pgnsi)(lpsystem_info);
dword getnumberofprocessors()
{
system_info si;
// call getnativesysteminfo if supported or getsysteminfo otherwise.
pgnsi pfngnsi = (pgnsi) getprocaddress(getmodulehandle(_t("kernel32.dll")), "getnativesysteminfo");
if(pfngnsi)
{
pfngnsi(&si);
}
else
{
getsysteminfo(&si);
}
return si.dwnumberofprocessors;
}
[ctrl+a 全部选择 提示:你可先修改部分代码,再按运行">
出处:http://blog.csdn.net/wingeek/
如果喜欢[windows编程"> 获取系统cpu 个数请收藏或告诉您的好朋友.
阅读(168) | 评论(0) | 转发(0) |