![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA基础
文章平均质量分 65
MaggieChenn
哎哟不错哦~
展开
-
HashMap多线程不安全
事故分析最近一次web工程上线,上线大概半个小时,出现了报警,16核的服务器的cpu使用了1123%,程序出异常了。 Cpu利用率过高一般是因为出现了出现了死循环,导致部分线程一直运行。占用cpu时间。使用jstack工具dump出问题的那台服务器的栈信息。死循环的话,首先查找RUNNABLE的线程,找到问题代码如下:Java.lang.Thread.State:RUNNABLE转载 2017-05-11 10:26:42 · 890 阅读 · 0 评论 -
Java Thread(线程)sleep和wait的区别浅析
参考文章: http://blog.csdn.net/liuzhenwen/article/details/4202967 http://www.cnblogs.com/DreamSea/archive/2012/01/16/2263844.html 然后赶紧来总结一下sleep()和wait()的区别。 sleep()是Thread类的静态方法, 而wait()是Object的方法原创 2017-05-12 14:19:31 · 487 阅读 · 0 评论 -
交流心得1
关于==和equals() ==和equals()的区别不能一概而论:在object类里面equals的实现就是用==来判断的,此时二者并无异同。但是绝大多数的类都会重写equals方法。 String类里面重写equals方法:首先判断是否==,如果==则返回true, 否则每一个字符挨个比较,相同的话也返回true. a. String重写equals(): public boolean原创 2017-05-13 15:26:48 · 346 阅读 · 0 评论 -
交流心得2
1.java.lang.Math Math.round(); // 四舍五入 Math.ceil(); // ceil 天花板,向上取整 Math.floor(); // 地板,向下取整 2.JMM和栈帧结构 a. java虚拟机内存模型 方法区:方法区它用于存储已被虚拟机加载的类信息、常量、静态常量、即时编译器编译后的代码等数据。方法区和原创 2017-05-14 01:20:02 · 397 阅读 · 3 评论 -
面试题集1
1.观察者模式(发布/订阅模式) 2.GC “地球人都知道,Java有个东西叫垃圾收集器,它让创建的对象不需要像c/cpp那样delete、free掉,你能不能谈谈,GC是在什么时候,对什么东西,做了什么事情?” 什么时候:系统自身决定,不可预测的时间/调用System.gc()的时候。eden满了minor gc,升到老年代的对象大于老年代剩余空间majorGc,full gc原创 2017-05-16 03:27:20 · 480 阅读 · 0 评论