
Java虚拟机
Deniece2017
这个作者很懒,什么都没留下…
展开
-
深入理解volatile在内存模型中的实现原理
当一个变量定义为volatile之后,它将具备两种特性:第一:保证此变量对所有线程的可见性,这里的可见性是指当一条线程修改了这个变量的值,新值对于其他线程来说是可以立即得知的。普通变量的值在线程间传递需要通过主内存来完成由于valatile只能保证可见性,在不符合一下两条规则的运算场景中,我们仍要通过加锁来保证原子性1.运算结果并不依赖变量的当前值,或者能够确保只有单一的线程修改变量的...转载 2019-02-19 17:34:40 · 221 阅读 · 0 评论 -
OutOfMemory异常总结
在Java虚拟机规范的描述中,除了程序计数器外,虚拟机内存的其他几个运行时区域都有可能发生OutOfMemoryError(OOM)异常。1 Java堆溢出 Java堆用于存储对象实例,只要不断的创建对象,并且保证GCRoots到对象之间有可达路径来避免垃圾回收机制清除这些对象,那么在数量到达最大堆的容量限制后就会产生内存溢出异常 Java堆内存的OOM异常是时机应...转载 2019-02-19 18:00:30 · 333 阅读 · 0 评论 -
Java应用CPU占用100%原因分析
Java应用CPU占用100%原因分析:https://www.cnblogs.com/qiaoshanzi/p/5717275.html1 top命令查看CPU占用情况,获取到占用CPU较高的进程号2 ps -ef|grep 进程号 查看是否能找到对应的java服务2 ps -mp 进程号 -o THREAD,tid,time查看占用CPU较高的线程号,并将线程号转为16进制(prin...转载 2019-03-04 17:29:19 · 234 阅读 · 0 评论 -
JVM知识点梳理
jvm 总体梳理jvm体系总体分四大块: 类的加载机制 jvm内存结构 GC算法 垃圾回收 GC分析 命令调优 当然这些知识点在之前的文章中都有详细的介绍,这里只做主干的梳理这里画了一个思维导图,将所有的知识点进行了陈列,因为图比较大可以点击右键下载了放大查看。类的加载机制主要关注点:...转载 2019-09-18 06:49:37 · 107 阅读 · 0 评论 -
Java性能调优
对于调优这个事情来说,一般就是三个过程: 性能监控:问题没有发生,你并不知道你需要调优什么?此时需要一些系统、应用的监控工具来发现问题。 性能分析:问题已经发生,但是你并不知道问题到底出在哪里。此时就需要使用工具、经验对系统、应用进行瓶颈分析,以求定位到问题原因。 性能调优:经过上一步的分析定位到了问题所在,需要对问题进行解决,使用代码、配置等手段进行优化。 ...转载 2019-09-21 16:15:56 · 338 阅读 · 0 评论 -
JVM调优面试
1、JVM调优主要涉及两方面:堆大小的设置,垃圾回收期的选择,首先要对自己对系统有个定位,是吞吐量优先型系统还是响应优先型系统。 吞吐量优先型系统,一般建议设置一个大的年轻代和一个小的老年代,这样可以尽可能回收掉大部分短期对象,而年老代尽存放长期存活对象。这种系统建议使用吞吐量优先的并行收集器(UseParallelGC),-XX:+UseAdaptiveSizePolicy(大小自适应...原创 2019-10-10 21:33:13 · 381 阅读 · 0 评论