首页 编程 软件学院 查看内容

80%的java程序员不了解的调试技巧

2017-5-27 17:17 |来自: 互联网 1738 0

摘要: 今天我们来谈谈调试代码的一些技巧,在使用IDE提供的debugger时一些快速定位问题的方式。1 多线程调试开发过多线程应用的朋友应该有体会,有些时候,为了观察多个线程间变量的不同状态,以及锁的获取等,就会想到在 ...

  • 今天我们来谈谈调试代码的一些技巧,在使用IDE提供的debugger时一些快速定位问题的方式。

1 多线程调试

  • 开发过多线程应用的朋友应该有体会,有些时候,为了观察多个线程间变量的不同状态,以及锁的获取等,就会想到在代码里加个断点debug一下。

  • 在IDE里断点停下来的时候,可以切换到另外的线程中,跑其他的代码,不会互相影响。当然,这里是有个开关的,在Eclipse里默认开启,但是在IntelliJ IDEA里默认是没有开启的。也就是说如果你在IDEA里代码里加断点,虽然一个线程的断了下来,但其他线程的已经执行过了。此处把线程的suspend设置成和Eclipse模式一样之后,也可以开始多线程应用的调试。简单设置可以直接在断点处,将suspend改成Thread

学习方法可以找我java学习交流 群331789133

  • IntelliJ IDEA里在这儿切换

  • 我们看到main线程和pool-1-thread-1这两个线程都处于RUNNING状态,切换到任何一个都可以继续运行。


2 后退执行

  • 依靠后退执行的功能,可以后退,就像下棋时悔棋那种功能一样

  • 有了这个功能,我们在Drop 了当前这个Frame之后,已经改变的变量值不会恢复。

3 条件断点

学习有困难或者想获取JAVA资料学习方法可以找我java学习交流 群331789133

4 片断代码

  • 然后,还可以调用对象的方法,执行功能,获取属性值等。

5 查看变量修改值

本文出处: http://www.toutiao.com/a6424721651803963650/
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部