0

我正在尝试在 .NET 应用程序上运行性能计数器,并且我想确保重建之间的环境相同。到目前为止,我只能认为最好的方法是在每次测试之前重新启动电脑以使所有测试都处于 COLD 状态。有没有另一种方法可以实现相同的环境而无需每次都重新启动?

4

2 回答 2

2

你到底想在你的应用程序中测试什么?您应该知道,当您编译代码时,您只会生成由 JIT 在运行时再次编译的 IL。每次运行您的应用程序时都会执行此操作(不幸的是)。

因此,除非您正在测试非常微小的东西或特定于 CLR 的东西,否则我会说这是在浪费您的时间。

编辑:看来您可能担心已经在堆上分配了内存。假设运行之间有足够的可用内存,您应该只看到运行之间的非常小的差异。如果您的运行接近极限(32 位应用程序为 3Gb),那么您将不得不向更了解系统模拟和性能测试的人询问。

希望这可以帮助。

于 2009-09-01T04:29:07.253 回答
1

也许在虚拟机的多个实例中运行它?

于 2009-09-01T04:12:26.197 回答