我用c#构建程序。我想找到手术所花费的时间。代码工作,但每次显示相同输入的不同输出。怎么解决呢?
Stopwatch sw = new Stopwatch();
sw.Start();
我的代码
sw.Stop();
Double timeTaken = sw.Elapsed.TotalMilliseconds;
Label.Text = timeTaken.ToString();
答案 0 :(得分:0)
您的问题为什么timeTaken
每次都不一样?这是预期的:由于各种原因,不同的操作运行可能需要不同的时间。
另外,请注意:
默认情况下,秒表实例的已用时间值等于 所有测量的时间间隔的总和。每次调用Start都会开始 按累计经过时间计算;每次拨打Stop都会结束 当前间隔测量并冻结累计经过的时间 值。使用重置方法清除累计经过的时间 现有的秒表实例。
因此,如果您的经历时间越来越长,您可能需要执行Reset
。
那来自here。
答案 1 :(得分:0)
没有理由期望每次执行时花费相同的时间。传统的做法是多次测量并报告平均值,可能还有方差。
各种因素影响所花费的时间 - 其他程序运行,网络流量,缓存文件读取等等。