C#调试心经续
来源:Alexis的51博客 责任编辑:栏目编辑 发表时间:2013-07-01 11:10 点击:次
由于上篇文章漏了一些比较重要的知识,在此文中补充。
断点篇
命中次数(Hit Counts)
右击断点,可以设置Hit Counts(命中次数),会弹出如下的对话框
当条件满足的时候断点会被命中(即即将被执行),这个命中次数是断点被命中的次数。默认是始终break,选项有如下的几种:始终break;当命中次数达到多少次时break;当命中次数是多少的倍数时break;当命中次数大于等于多少的时候break。
于是在上篇中的条件也可以这样实现,设置命中次数等于50的时候break,按F5后,断点被触发,此时i=50。
断点过滤器
我们可以限制断点在特定的处理器和进程中。可以设置机器名、进程id、进程名、线程id、线程名中的某些条件来过滤一些断点。
注意:ThreadId需要特别说明一下,ThreadId并不是托管程序中,.NET 框架中System.Threading.Thread.ManagedThreadId,两者不能等同。简单来说,ManagedThreadId是线程在CLR中的标识符,而ThreadId却是线程在操作系统中的标识符。因此ThreadId需要从调试器中的“Threads”窗口中获取。
断点条件
我们可以设置断点达到的条件,如下图,我们设置表达式为i==5(注意是判相等,而不是赋值的等于),按F5,断点再次被触发,此时i=50。
还有一个选项是已经被改变,则里面条件是具体的变量,如我们的代码如下
- private void ConditionDebug()
- {
- int hitCount = 0;
- for (int
相关新闻>>
最新推荐更多>>>
- 发表评论
-
- 最新评论 更多>>