【发布时间】:2015-04-26 15:03:53
【问题描述】:
当我对我的代码进行基准测试时,我注意到第一次运行太慢而下一次运行太快。是什么原因?
for (int i = 0; i < 10; i++)
{
var timer = new Stopwatch();
timer.Start();
var expression = new Expression('x');
Console.WriteLine(timer.ElapsedTicks);
}
结果
15096
6
0
1
1
1
1
1
0
有没有什么方法可以在第一次运行时始终获得最大速度?
【问题讨论】:
-
你在实例化什么
Expression类?System.Linq.Expressions中的那个是抽象的,我找不到任何其他具有带 char 参数的构造函数的类。 -
哦。没有那个名为表达式的自定义类。我将它命名为表达式。@JacobBundgaard
标签: c# performance benchmarking