[英]Running Visual Studio console application in debug mode consumes no more than 50 percent cpu usage
我有几个C#控制台应用程序,基本上解析内存中的大量数据(LINQ)并将结果输出到文本文件。
现在,忘记写入文本文件一分钟,因为这不是问题发生的地方。
当我在调试模式下运行应用程序时,我永远不会使用超过50%的CPU使用率。 它将解析/按摩数十万条记录,但只能快速运行X并利用50%的CPU(在任务管理器中查看)。
我真的想用100%的CPU来加快处理速度。
有人有任何见解吗?
我正在运行带有Service Pack 3的Windows XP Professional。我安装了带Service Pack 1的Visual Studio 2008 Professional。
谢谢!
编辑:
听起来你有一个双核CPU,你的应用程序是单线程的。
如果您的应用程序仅在一个线程上执行,而您碰巧有双核处理器,则只使用其中一个核心,因此您使用50%的可用处理器能力。
如果你有可能将工作分成逻辑部分并产生处理这些部分的线程,那么你可以使用两个核心。
你有一个两核处理器。 您的应用程序只有一个线程,只能在一个核心上运行。 它利用这个核心100%。 如果您还想使用其他核心,则必须使用更多线程。
正如其他人所说,您的应用程序运行在双核(2)核心CPU的一个核心上。 当您在任务管理器中看到50%时,这意味着运行您的应用程序的核心,即CPU的计算能力的一半,正在以100%运行。
编写软件以利用多核CPU本身就是一门艺术。 请参阅此文章以供讨论。 正如@Alex Moore所说,如果你看到51%或52%,这可能意味着另一个核心正在做1%-2%的事情。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.