![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM
文章平均质量分 89
zs742946530
这个作者很懒,什么都没留下…
展开
-
Jvm笔记---李兴华老师讲jvm
Eden区 中文叫 伊甸园区。年轻代:Eden区+存活区,存活区包括(S0+S1)。jdk1.8之后取消了永久代,而是变成了元空间(不在堆内存里保存,而是直接利用物理内存保存)。伸缩区有这么大的处理范围,所以在进行堆内存分配的过程时当用户访问量增大的时候就一定会导致不断的判断空间是否充足,不断的进行空间的增长,不断的进行内存空间的收缩和释放。也会影响效率!!参数说明:-Xms:...原创 2018-10-18 19:03:14 · 1100 阅读 · 0 评论 -
转:jvm中oom的几种情况
对于JVM的内存写过的文章已经有点多了,而且有点烂了,不过说那么多大多数在解决OOM的情况,于此,本文就只阐述这个内容,携带一些分析和理解和部分扩展内容,也就是JVM宕机中的一些问题,OK,下面说下OOM的常见情况:第一类内存溢出,也是大家认为最多,第一反应认为是的内存溢出,就是堆栈溢出:那什么样的情况就是堆栈溢出呢?当你看到下面的关键字的时候它就是堆栈溢出了:java.lang.Ou...转载 2018-10-23 11:08:43 · 226 阅读 · 0 评论 -
【转】Java -- 偏向锁、轻量级锁、自旋锁、重量级锁
之前做过一个测试,详情见这篇文章《多线程 +1操作的几种实现方式,及效率对比》,当时对这个测试结果很疑惑,反复执行过多次,发现结果是一样的: 1. 单线程下synchronized效率最高(当时感觉它的效率应该是最差才对); 2. AtomicInteger效率最不稳定,不同并发情况下表现不一样:短时间低并发下,效率比synchronized高,有时甚至比LongAdder还高出一点,但是高并...转载 2018-12-29 16:02:42 · 133 阅读 · 0 评论 -
【转】Java 内存溢出(java.lang.OutOfMemoryError)的常见情况和处理方式总结
ava.lang.OutOfMemoryError这个错误我相信大部分开发人员都有遇到过,产生该错误的原因大都出于以下原因:JVM内存过小、程序不严密,产生了过多的垃圾。导致OutOfMemoryError异常的常见原因有以下几种:内存中加载的数据量过于庞大,如一次从数据库取出过多数据; 集合类中有对对象的引用,使用完后未清空,使得JVM不能回收; 代码中存在死循环或循环产生过多重复的...原创 2019-03-09 10:07:49 · 139 阅读 · 0 评论 -
什么情况下发发生full gc
Minor GC后存活的对象晋升到老年代时由于悲观策略的原因,有两种情况会触发Full GC,1、是之前每次晋升的对象的平均大小 > 老年代剩余空间2、是Minor GC后存活的对象超过了老年代剩余空间。这两种情况都是因为老年代会为新生代对象的晋升提供担保,而每次晋升的对象的大小是无法预测的,所以只能基于统计,1个是基于历史平均水平,一个是基于下一次可能要晋升的最大水平。这两种情况都...原创 2019-03-25 19:45:00 · 1031 阅读 · 1 评论