是否可以从应用程序执行的中间启动性能分析器?

我有从UI调用的此计算功能。问题是,当我使用Stopwatch测量其经过时间时,我发现在第一次调用函数后经过的时间大大减少了。我怀疑在下次调用中会绕过一部分功能,这是不期望的。这是一段相当复杂的代码,其中包含许多子例程,其中将创建数千个对象并执行大量计算。

想到的是使用性能分析器比较第一个和第二个呼叫。但是,当我尝试在运行应用程序后启动探查器时,它将运行该应用程序的新实例。

那么,我该怎么做才能比较一个函数的不同调用?

syz12589 回答:是否可以从应用程序执行的中间启动性能分析器?

似乎attach Visual Studio performance tools to running processes

  

附加到正在运行的进程

     
      
  1. 在“调试”菜单上,依次指向“探查器”,“性能资源管理器”,然后单击“附加”。
  2.   
  3. 出现“将Profiler附加到进程”对话框。
  4.   
  5. 单击要附加到的进程的名称。
  6.   
  7. 点击附加。
  8.   

不确定您的特定情况,但是似乎可以在一个性能分析会话中记录两个单独的调用,然后连续选择两个峰并研究每个峰中方法时间分布的差异。

本文链接:https://www.f2er.com/2994402.html

大家都在问