IDEA 和 Eclipse 调试多线程应用
Contents
起源
从Eclipse切换到IDEA后,在进行多线程调试的时候,发现它阻塞了其他所有的线程,但是在同事的Eclipse上进行调试的时候,却发现并没有阻塞。
原因
我使用的IDEA版本是14.1.4(Ubuntu 14.04 64 bit, JDK 1.8 64 bit),经过查资料发现IDEA和Eclipse的调试策略默认情况下配置不同.
IDEA默认是ALL级别
Eclipse默认是Thread级别
解决
想要调整调试级别时,可以到相应的IDE下修改下即可.
IDEA -> run -> View breakpoints,选择对应的断点,然后在右边的界面里选择Suspend,有两个选项ALL和Thread. 因为默认情况下是ALL,所以才会导致阻塞所有.
Eclipse -> Window -> Preferences -> Java -> Debug ,右边的界面有Default suspend policy for new breakpoints,这个是全局默认修改配置.