c++ - 获取 C++ MFC 应用程序中的 CPU 数量

标签 c++ multithreading

我写了一个小的 raytracer,我想查询当前计算机提供了多少个 cpu 内核(如果 cpu 使用超线程,则为虚拟 cpu 内核),这样我就可以实例化尽可能多的线程以获得更好的并行渲染。

我如何使用 C++ 做到这一点?

谢谢!

最佳答案

您可以通过调用GetSystemInfo 来获取物理处理器的数量。并检查 SYSTEM_INFOdwNumberOfProcessors 字段结构。您可以通过调用 GetLogicalProcessorInformation 来获取逻辑处理器的数量。 .

关于c++ - 获取 C++ MFC 应用程序中的 CPU 数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1716885/

相关文章:

ruby-on-rails - 了解 Rails 中的 race_condition_ttl

c++ - 在单个多线程 C++ 进程中使用 boost::interprocess::interprocess_semaphore 有缺点吗?

c++ - 生成位掩码

c++ - 如何使 WS_THICKFRAME 不可见,但在 MFC 中仍然起作用?

c++ - 导出的 C++ 类的 boost::hash_value 内联函数

multithreading - 如果您解锁一个已经解锁的互斥锁,行为是否未定义?

multithreading - Windows Azure Worker Role,主线程做什么?

c++ - 从 MFC CDialog 上的子控件接收 WM_MOUSEMOVE

c++ - 如何在编译时连接一个 const char*

c++ - 关于使用 QThreadStorage 的线程安全