记一次CPU居高不下,程序卡壳的解决办法
在启动了idea后idea会占用20-30的CPU ,启动程序java 程序会占用大量的CPU使使用率达到了90以上甚至于100%。造成了程序卡的要死。
针对这个情况我希望能把CPU的使用率降下来,所以尝试了很多方法
1、降低idea的自动语法检查。在idea的右下角有一个小人的头像,可以调节。降低以后cup使用率可以下降10-20左右,但不知为啥,这个等级一直会自动上调,而且会调到最高。
2、发现java 虚拟机占用的CPU也不少,所以查看了java 运行的线程 在命令提示符,框中使用 jsp -l 选择java 运行的pid号 ,使用命令 jstack -l [pid] [转储地址.stack] 转储 .stack 文件。
3、使用 Processor Explorer 排查java 中CPU占用最大的线程,拿到tid 把tid 转换为16进制在刚刚转储 的.stack 文件中查找到对呀的16进制线程号。查看。
发现我的这个占用高是因为org.springframework.boot.devtools.filewatch.FileSnapshot ,自此问题定位。是因为springBoot的热部署导致的。找到配置文件,吧热部署关闭。问题解决。