为什么在CPU采样中运行代码所需的时间是代码自身运行时间的一半?

时间:2014-07-08 05:32:55

标签: c# performance diagnostics

我正在尝试使用Visual Studio的性能和诊断部分,并且有趣地发现在CPU采样中运行代码所需的时间是代码运行时间的一半。

为什么会这样?

我可以使用它而不是运行代码运行CPU Sampling profiler并获得更早的结果吗?

1 个答案:

答案 0 :(得分:1)

这种效果不应该是可能的,除非你有另一个不清楚的因素(比如运行Release to Debug mode等)。

作为MSDN says

  

采样分析方法收集有关在分析运行期间应用程序执行的工作的统计数据。采样方法是轻量级的,对应用程序方法的执行影响不大

     

(...)

     

采样分析方法以设定的时间间隔中断计算机处理器并收集函数调用堆栈。

相关问题