所以我有一些代码依赖于stopwatch
进行一些计算。
然而,一旦秒表启动,它甚至在调试期间也不会停止,当我尝试调试代码时,它会给我带来麻烦。
在调试过程中,有什么方法可以阻止秒表运行。我正在使用VS2012。
答案 0 :(得分:6)
不,你不能。因为秒表实际上不是正在运行,就像你可以暂停和恢复的线程一样。它只是花时间在开始时和停止时间并计算差异。
也许如果您发布您的代码或概念,我们可以找到一种方法来解决您的问题,而无需秒表?
答案 1 :(得分:2)
这可能不是你所希望的,但你可以暂时这样做:
stopwatch.Stop();
Debugger.Break();
stopwatch.Start();
如果您不想担心意外丢弃,可以将其包装在#if DEBUG块中。
答案 2 :(得分:0)
如果使用VS2012中的Debug配置文件运行,则可以使用以下命令:
#if DEBUG
sw.Stop();
#endif
答案 3 :(得分:-1)
使用System.Diagnostics.Debugger.Break();
。
Debugger.Break:如果没有附加调试器,系统会询问用户是否 想要附加一个调试器。如果是,则启动调试器。如果一个 附加调试器,调试器通过用户断点发出信号 事件,调试器暂停执行该进程,就像一个 调试器断点已被击中。
希望它有用。