如何使用C#中的DebugBreak()?(How can I use debugbreak() i

2019-06-24 03:32发布

什么是语法和命名空间/类需要进口? 给我的示例代码如果可能的话。 这将是很大的帮助。

Answer 1:

我也想检查是否调试器附加 - 如果你打电话Debugger.Break当没有调试器,它会提示用户是否要附加一个。 根据你想要的行为,你可能需要调用Debugger.Break()仅当(或如果不)一个已经连接

using System.Diagnostics;

//.... in the method:

if( Debugger.IsAttached) //or if(!Debugger.IsAttached)
{
  Debugger.Break();
}


Answer 2:

把在你需要它的情况如下:

System.Diagnostics.Debugger.Break();


Answer 3:

http://msdn.microsoft.com/en-us/library/system.diagnostics.debugger.break.aspx

#if DEBUG
  System.Diagnostics.Debugger.Break();
#endif


Answer 4:

你可以使用System.Diagnostics.Debugger.Break()在一个特定的地方,打破..这可以像调试服务的情况有所帮助。



Answer 5:

从@Philip里克和@约翰的答案是微妙的不同。

约翰的...

#if DEBUG
  System.Diagnostics.Debugger.Break();
#endif

只有当你用DEBUG条件编译符号集编制工作。

菲利普的回答...

if( Debugger.IsAttached) //or if(!Debugger.IsAttached)
{
  Debugger.Break();
}

适用于任何工作,调试器,所以你会给任何黑客有点恐惧的了。

还注意到SecurityException它可以抛出,所以不要让出来的代码到野外。

另一个原因没有来......

如果没有附加调试器,用户被询问是否要附加一个调试器。 如果用户说的是,在调试器启动。 如果一个调试器附加,调试器信号与用户断点事件,调试器挂起过程的执行,就好像调试器断点被击中。

从https://msdn.microsoft.com/en-us/library/system.diagnostics.debugger.break(v=vs.110).aspx



文章来源: How can I use debugbreak() in C#?