JVM
文章平均质量分 94
JVM相关的知识
戏入人生。
天道酬勤
展开
-
JVM之常用参数整理
JVM之常用参数整理常用参数设置垃圾回收器Parallel常用参数CMS常用参数G1常用参数非常用参数常用参数-Xmn10M :Young区的大小10M-Xms50M : Heap的初始容量50M-Xmx50M :Heap的最大容量50M-Xss10M:栈空间10M-XX:+PrintCommandLineFlags : 打印程序配置参数-XX:+PrintGC :打印GC信息-XX:+PrintGCDetails : 打印GC详细信息-XX:+PrintG原创 2020-05-22 22:00:18 · 500 阅读 · 1 评论 -
JVM之G1浅析
JVM之G1浅析前置基础概念Card TableCSet(Collecation Set)RSet(RememberedSet)Humongous对象G1结构Young区和Old区如何回收?G1的特点G1的GC分类三色标记算法RSet和SATB算法的配合前置基础概念Card Table跟各种垃圾回收器没有太大的关系,主要有用于优化分代模型快速扫描garbage,在可达性分析判断eden区某个对象是否还有引用指向,如果指向eden区对象引用在old区,那么在判断eden区的某个对象是否存活,就需要遍历整原创 2020-05-21 22:54:15 · 1680 阅读 · 0 评论 -
JVM之arthas在线排查工具
JVM之arthas在线之在线排查工具启动arthas总结几个常用的命令1.jvm命令:2.thread命令:3. dashboard命令:4.heapdump 命令5.jad命令:6.redefine命令:7.SC命令:启动arthasarthas的github地址:https://github.com/alibaba/arthasarthas官方文档:https://alibaba.github.io/arthas/index.html点开github上arthas的中文文档按照文档的步骤一原创 2020-05-20 21:48:19 · 923 阅读 · 0 评论 -
JVM之对象总结
JVM之对象总结对象的创建过程?对象在内存中存储布局?对象头具体包括什么?对象怎么定位?对象怎么分配?Object o = new Object();在内存中占用多少字节?对象的创建过程?1.class loading 把class文件加载到内存2.class linking(verification验证,preparation准备,resolution解析)verification:验证class文件的格式是否正确preparation:给静态变量付默认值resolution:把符号引用替换原创 2020-05-17 16:02:24 · 166 阅读 · 0 评论 -
JVM之Runtime Data Area和JVM Instructions分析
JVM之Runtime Data Area和JVM Instructions分析结构图包含哪些组件以及作用局部变量表结构图包含哪些组件以及作用一个java文件在javac指令后编译成class文件会经过 load、link、initializing后进入到runtime data arearuntime data area包含很多的组件,他们分别是:heap(堆)JVM stacks (JVM栈):每一个线程都有自己的JVM stack,而JVM stack里面又可以包含很多的frame(栈原创 2020-05-17 00:24:19 · 277 阅读 · 0 评论 -
JVM之ClassLaoder
JVM之ClassLaoder常识类的加载流程初识class文件字节码双亲委派机制常识1.JVM是一种规范,有很多具体的实现,比如常用的hotspot,阿里的TaoBaoVM。2.范围从小到大 JVM-> JRE->JDK3.JVM运行只看字节码文件,不看是谁成产的字节码。类的加载流程很简单,直接看图,正常的java文件通过javac命令变编译成.class文件,会被ClassLoader直接加载到内存,这个时候会在内存中创建两块内容,第一块是把class文件原封不同的加载进内存,第原创 2020-05-14 04:41:09 · 181 阅读 · 0 评论