问题描述
我创建了一个通过Windows服务运行的多线程应用程序。之前,我的系统中有2个核心,现在我增加到6个核心。即使增加了内核数量,我的应用程序的性能也没有得到优化
我在应用程序中尝试了线程和任务以实现多线程,但是应用程序的性能没有显着差异。
如何找到应用程序在系统中正在运行或正在使用的线程和核心的数量,以便我知道我的所有核心是否都在使用?
解决方法
这取决于操作系统的调度程序。 Windows服务不是在计算机上运行的唯一服务。操作系统决定如何为所有需要运行的线程分配CPU时间。
如果要使您的应用程序更加“多核友好”,则需要分享有关它及其功能的更多详细信息。