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

 

还有一个选项是已经被改变,则里面条件是具体的变量,如我们的代码如下

  1. private void ConditionDebug()  
  2. {  
  3.             int hitCount = 0;  
  4.             for (int

      相关新闻>>

      发表评论
      请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
      用户名: 验证码:点击我更换图片
      最新评论 更多>>

      推荐热点

      • 用C#制作屏幕捕获程序
      • .NET程序员项目开发必知必会—Dev环境中的集成测试用例执行时上
      • 遍历ArrayList易犯错误
      • C#对XML操作:一个处理XML文件的类(1)
      • .NET简谈反射(动态调用)
      • 使用C#编写LED样式时钟控件
      • DataList嵌套问题 如何删除内层子DataList的记录
      • 怎样用C#实现完整文档打印功能
      • .NET简谈自定义事务资源管理器
      网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
      Copyright © 2008-2015 计算机技术学习交流网. 版权所有

      豫ICP备11007008号-1