我用 C# 编写了一个应用程序,前几分钟它每秒执行超过 11.000 次操作 (SHA1/AES)。但是当我让它运行几分钟时,它会下降到 6.000 p/sec,并在这个水平上保持几个小时。如果我重新启动应用程序,它将返回到 11.000。任务管理器中的 CPU 使用率显示了类似的模式。
现在我正在寻找一个解释,或者我如何测量操作/秒存在一个巨大的错误(但在那种情况下,任务管理器会讲述一个不同的故事),或者一旦 Windows 注意到它,它就会给我的程序更少的 CPU 时间执行繁重的工作。两者似乎都不太可能,那么重启后它运行得更快的原因是什么?