使用JetBrains Rider调试时,是否有类似Visual Studio的耗时查看功能?
Rider中查看调试单步执行耗时的方法
嘿,这个功能Rider完全支持!而且有几种实用的方式可以实现,我来给你详细说说:
方法一:使用跟踪点(Tracepoints)记录时间差
跟踪点是Rider里很实用的调试工具,不用修改代码就能记录执行时间:
- 在你想监控的代码行上右键,选择「Add Tracepoint」
- 在弹出的窗口里,在「Message」输入框中写:
[{DateTime.Now:HH:mm:ss.fff}] 执行到当前代码行 - 点击「OK」后,调试时每次执行到这个跟踪点,就会在「Debug Output」窗口输出带精确时间戳的日志,你可以通过相邻两次的时间戳计算单步执行的耗时
方法二:结合性能探查器(Profiler)实时查看
如果需要更专业、可视化的耗时分析,可以在调试会话中启动Profiler:
- 先启动调试(F5),然后点击工具栏上的「Run Profiler」按钮(火焰图样式的图标)
- 选择「Sampling Profiler」或者「Tracing Profiler」(Tracing精度更高,但性能开销稍大)
- 接下来单步执行代码(F10/F11),Profiler会实时记录每一步的执行时间,你可以在Profiler窗口里看到详细的耗时分布,甚至能定位到具体方法的执行时长
方法三:即时窗口(Immediate Window)手动计时
如果你需要临时快速计算某段代码的耗时,也可以用即时窗口:
- 在调试暂停时,打开「Immediate Window」(通过菜单「View → Tool Windows → Immediate」打开)
- 输入
var stopwatch = System.Diagnostics.Stopwatch.StartNew();回车 - 单步执行你想测试的代码段
- 再回到即时窗口输入
stopwatch.Elapsed回车,就能看到这段代码的执行时长
另外,如果你习惯Visual Studio里直接在调试界面显示单步耗时的样式,Rider目前没有这个内置选项,但上面这几种方法完全能满足你的需求,而且灵活性更高。
内容的提问来源于stack exchange,提问作者Andrio
相关产品推荐
相关产品推荐

