多个并发线程现在,我们只需要使用这样的事情你如何衡量代码块(线程)的执行时间与.NET
stopWatch.Start();
try
{
method();
}
finally
{
stopWatch.Stop();
}
,工作正常进行的同步方法,但也有一些异步执行,所以当多个线程正在执行时,时间会偏斜。是否有与System.Diagnostics.Stopwatch相当的功能,将只测量当前线程中的时间花费?
我们希望随着时间在我们的内部测试版长一段时间(阿尔法?)发布收集数据和一个剖析全职下运行是不是一个可行的选择。为了澄清,我们只想测量执行method()所花费的时间,所以如果Method1()和Method2()都在同一时间开始并且Method1在2秒标记处结束,并且Method2在我想要的东西会告诉我Method1花了大约1秒的时间执行,Method2花了大约3秒的时间执行(假设他们在前2秒内平均分享(假定的单核)处理器
你是问在方法()对整个经过的时间花在处理器时间,因为在()的方法正在执行其他线程所使用的CPU?或者是方法()启动一些异步的东西,你想捕获时间的一部分经过的时间? – 2008-12-17 16:55:39
第一个。编辑澄清 – Davy8 2008-12-17 17:17:24