logo头像

BUG本天成,妙手偶得之

JAVA中的String真的不可变吗

String是不可变的吗?是的!真想变?也行~ 我们都知道,String是不可变对象,即一旦创建,那么就不能改变它的状态。对此,我们来分析一波。 String的内部构造小心翼翼进入String的内部,我们可以看到它是一个final...

CPU占用高如何排查

程序里少不了运算,如果不是环境太恶劣,CPU基本是能支撑应用运行的。但如果发现CPU居高不下,就需要思考是否程序有问题。 当服务器CPU居高不下,可以从下面几个方面入手定位问题。 找到JAVA进程 pid方法一: jps那个jar...

内存泄漏如何排查

JAVA的垃圾回收机制给了程序猿便利,我们可以不需要显式释放资源。但想高枕无忧却是不能,OOM像个隐藏在暗处的幽(hua)灵(nong),威胁着可怜、弱小又漂亮的程序猿。 一般来说,一个健康的程序,它是不应该出现OOM的。内存里的...

JAVA GC 简析

作为一个落魄的JAVA开发,在面试中常被问道:你是什么垃圾?哦不,是你对JAVA的垃圾回收机制有了解吗? 接下来就对GC做一个全方位的总结,希望下次可以自信地回答面试官:我是可以被贵公司回收的那种。 GC的时机首先,根据内存区域不...