【发布时间】:2013-06-03 01:27:37
【问题描述】:
我用 C# 编写了一个应用程序,前几分钟它每秒执行超过 11.000 次操作 (SHA1/AES)。但是当我让它运行几分钟时,它会下降到 6.000 p/sec,并在这个水平上保持几个小时。如果我重新启动应用程序,它将返回到 11.000。任务管理器中的 CPU 使用率显示出类似的模式。
现在我正在寻找一个解释,或者我测量每秒操作数的方式存在巨大错误(但在这种情况下,任务管理器会讲述不同的故事),或者 Windows 一次给我的程序更少的 CPU 时间它注意到它正在执行繁重的工作。两者似乎都不太可能,那么重启后运行速度更快的原因是什么?
【问题讨论】:
-
您的应用程序可能不会被视为更高的优先级,因此当更重要的任务出现时,它可能会击倒您的应用程序。 Windows 不应该关心工作,它只关心确保它自己的功能。
标签: c# windows performance cpu-usage slice