我尝试执行以下操作:
public class TimerTest
{
private DateTime start;
public TimerTest()
{
start = DateTime.Now;
}
public TimerTest(string message)
{
Debug.WriteLine("DEBUG: " + message);
}
public void Finish(string message)
{
var time = DateTime.Now - start;
var timeWent = String.Format("{0}.{1} sec.", time.Seconds, time.Milliseconds.ToString().PadLeft(3, '0'));
但看起来这是错误的方式......
答案 0 :(得分:3)
您的构造函数重载
public TimerTest(string message)
{
Debug.WriteLine("DEBUG: " + message);
}
甚至没有初始化时间变量。你的意思是这个构造函数是......
public TimerTest(string message)
{
Debug.WriteLine("DEBUG: " + message);
start = DateTime.Now;
}
答案 1 :(得分:2)
我认为部分问题在于您没有为每次通话实例化新的开始时间,因此您只是记录实例化该时间的差异。
如果你真的想要准确读取代码执行所需的时间,那么最好的选择之一是Stopwatch类,如下所述: