如何在调试C#和vs2012期间停止秒表

时间:2013-05-22 07:20:47

标签: c# .net visual-studio-2012 stopwatch

所以我有一些代码依赖于stopwatch进行一些计算。

然而,一旦秒表启动,它甚至在调试期间也不会停止,当我尝试调试代码时,它会给我带来麻烦。

在调试过程中,有什么方法可以阻止秒表运行。我正在使用VS2012。

4 个答案:

答案 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:如果没有附加调试器,系统会询问用户是否   想要附加一个调试器。如果是,则启动调试器。如果一个   附加调试器,调试器通过用户断点发出信号   事件,调试器暂停执行该进程,就像一个   调试器断点已被击中。

希望它有用。