jvm基础
jvm基础知识点的总结
xiaotai1234
计算机研究生在读,会使用java,javascript,php,c++,c,python等多门编程语言,懂算法,设计模式,jvm虚拟机,并发等。了解操作系统,计算机组成原理,计算机网络等基础底层知识。
展开
-
分析GC日志
分析GC日志一、GC日志参数二、GC日志格式1.复习:GC分类2.GC日志分类MinorGCFullGC3.GC日志结构剖析垃圾收集器原创 2021-02-21 11:44:44 · 232 阅读 · 0 评论 -
JVM运行时参数
JVM运行时参数一、JVM参数选项类型1.类型一:标准参数选项特点补充内容:-server与-client2.类型二:-X参数选项特点特别地3.类型三:-XX参数选项特点作用用于开发和调试jvm分类特别地...原创 2021-02-20 10:32:13 · 244 阅读 · 0 评论 -
jvm监控及诊断工具-GUI篇
jvm监控及诊断工具-GUI篇一、工具概述原创 2021-02-18 16:22:00 · 353 阅读 · 1 评论 -
jvm监控及诊断工具-命令行篇
jvm监控及诊断工具-命令行篇一、概述1.简单命令行工具二、jps:查看正在运行的java进程1.基本情况2.基本语法options参数hostid参数三、jstat:查看jvm统计信息1.基本原创 2021-02-16 15:46:10 · 333 阅读 · 0 评论 -
jvm性能监控与调优概述
jvm性能监控与调优概述一、大厂面试题二、背景说明1.生产环境中的问题2.为什么要调优3.不同阶段的考虑三、调优概述1.监控的依据2.调优的大方向四、性能优化的步骤1.发现问题(性能监控)2.排查问题(性能分析)3.解决问题(性能调优)五、性能评价/测试指标1.停顿时间(或响应时间)2.吞吐量3.并发数4.内存占用java堆区所占的内存大小5.相互间的关系...原创 2021-02-09 10:28:48 · 270 阅读 · 0 评论 -
再谈类的加载器
再谈类的加载器一、概述1.类加载的分类2.类加载器的必要性3.命名空间原创 2020-11-15 09:19:18 · 203 阅读 · 0 评论 -
类的加载过程(类的生命周期)详解
类的加载过程(类的生命周期)详解一、概述1.大厂面试题二、过程一:Loading(加载)阶段1.加载完成的操作2.二进制流的获取方式3.类模型与Class实例的位置4.数组类的加载三、过程二:Linking(链接)阶段1.环节1:链接阶段之Verification(验证)2.环节2:链接阶段之Preparation(准备)3.环节3:链接阶段之Resolution(解析)...原创 2020-11-14 10:57:25 · 375 阅读 · 1 评论 -
字节码指令集与解析举例
字节码指令集与解析举例一、概述1.执行模型2.字节码与数据类型3.指令分类二、加载与存储指令1.局部变量压栈指令2.常量入栈指令3.出栈装入局部变量表指令三、算术指令1.所有算术指令举例2.比较指令的说明四、类型转换指令1.宽化类型转换2.窄化类型转换五、对象的创建与访问指令1.创建指令2.字段访问指令3.数组操作指令4.类型检查指令六、方法调用与返回指令1.方法调用指令2.方法返回指令七、操作数栈原创 2020-11-13 10:16:37 · 305 阅读 · 0 评论 -
Class文件结构
Class文件结构一、概述1.字节码文件的跨平台性2.java的前端编译器3.透过字节码指令看代码细节代码举例二、虚拟机的基石:Class文件三、Class文件结构1.魔数:Class文件的标志2.Class文件版本号...原创 2020-11-11 15:27:13 · 776 阅读 · 1 评论 -
垃圾回收器的新发展
垃圾回收器的新发展1.概述2.jdk11新特性3.Open jdk12的Shenandoah GC4.令人震惊、革命性的ZGC原创 2020-09-03 16:02:23 · 241 阅读 · 0 评论 -
GC日志分析
GC日志分析1.概述2.Minor GC日志3.Full GC日志4.举例package com.atguigu.java;/** * 在jdk7 和 jdk8中分别执行 * -verbose:gc -Xms20M -Xmx20M -Xmn10M -XX:+PrintGCDetails -XX:SurvivorRatio=8 -XX:+UseSerialGC * @author shkstart shkstart@126.com * @create 2020 0原创 2020-09-03 15:26:44 · 286 阅读 · 0 评论 -
垃圾回收器总结
垃圾回收器总结1.7种经典垃圾回收器总结2.垃圾回收器组合3.怎么选择垃圾回收器?4.面试原创 2020-09-03 14:32:41 · 219 阅读 · 0 评论 -
G1回收器:区域化分代式
G1回收器:区域化分代式1.概述2.G1回收器的特点(优势)3.G1回收器的缺点4.G1回收器的参数设置5.G1回收器的常见操作步骤6.G1回收器的适用场景7.分区Region:化整为零8.G1回收器垃圾回收过程9.Remembered Set10.G1回收过程一:年轻代GC11.G1回收过程二:并发标记过程12.G1回收过程三:混合回收13.G1回收可选的过程四:Full GC14.G1回收过程:补充15.G1回收器原创 2020-09-03 11:35:23 · 409 阅读 · 0 评论 -
CMS回收器:低延迟
CMS回收器:低延迟1.概述2.CMS收集器可以设置的参数原创 2020-09-03 09:02:44 · 317 阅读 · 0 评论 -
Parallel回收器:吞吐量优先
Parallel回收器:吞吐量优先原创 2020-09-03 07:31:40 · 419 阅读 · 0 评论 -
Serial回收器:串行回收
Serial回收器:串行回收原创 2020-09-03 07:30:30 · 230 阅读 · 0 评论 -
ParNew回收器:并行回收
ParNew回收器:并行回收原创 2020-09-03 07:30:43 · 234 阅读 · 0 评论 -
不同的垃圾回收器概述
不同的垃圾回收器概述1.概述2.垃圾收集器发展史3.7款经典的垃圾回收器4.7种经典收集器与垃圾分代之间的关系5.垃圾收集器的组合关系6.如何查看默认的垃圾收集器package com.atguigu.java;import java.util.ArrayList;/** * -XX:+PrintCommandLineFlags * * -XX:+UseSerialGC:表明新生代使用Serial GC ,同时老年代使用Serial Old GC *原创 2020-09-03 07:29:43 · 264 阅读 · 0 评论 -
GC分类与性能指标
GC分类与性能指标1.概述2.垃圾回收器分类3.评估GC的性能指标4.吞吐量5.暂停时间6.吞吐量和暂停时间对比原创 2020-09-02 12:11:16 · 662 阅读 · 0 评论 -
再谈引用:终结器引用
再谈引用:终结器引用原创 2020-09-02 09:39:41 · 977 阅读 · 1 评论 -
再谈引用:虚引用
虚引用-对象回收跟踪package com.atguigu.java1;import java.lang.ref.PhantomReference;import java.lang.ref.ReferenceQueue;/** * 虚引用的测试 * * @author shkstart shkstart@126.com * @create 2020 16:07 */public class PhantomReferenceTest { public static Ph原创 2020-09-02 09:37:04 · 288 阅读 · 0 评论 -
再谈引用:弱引用
再谈引用:弱引用package com.atguigu.java1;import java.lang.ref.WeakReference;/** * 弱引用的测试 * * @author shkstart shkstart@126.com * @create 2020 16:06 */public class WeakReferenceTest { public static class User { public User(int id, String原创 2020-09-02 09:24:18 · 209 阅读 · 0 评论 -
再谈引用:软引用
软引用-内存不足即回收原创 2020-09-02 08:46:33 · 264 阅读 · 0 评论 -
再谈引用:强引用
再谈引用:强引用1.引用概述2.强引用-不回收package com.atguigu.java1;/** * 强引用的测试 * * @author shkstart shkstart@126.com * @create 2020 16:05 */public class StrongReferenceTest { public static void main(String[] args) { StringBuffer str = new Strin原创 2020-09-02 08:24:55 · 250 阅读 · 0 评论 -
安全点与安全区域
安全点与安全区域1.安全点2.安全区域原创 2020-09-02 08:02:00 · 231 阅读 · 0 评论 -
垃圾回收的并行与并发
垃圾回收的并行与并发1.并发2.并行3.并发与并行对比4.垃圾回收的并发与并行原创 2020-09-02 07:50:28 · 310 阅读 · 0 评论 -
Stop the World
Stop the Worldpackage com.atguigu.java;import java.util.ArrayList;import java.util.HashMap;import java.util.List;/** * @author shkstart shkstart@126.com * @create 2020 15:50 */public class StopTheWorldDemo { public static class WorkThrea原创 2020-09-02 07:34:44 · 193 阅读 · 0 评论 -
内存溢出与内存泄漏
内存溢出与内存泄漏1.内存溢出2.内存泄漏原创 2020-09-01 14:45:11 · 197 阅读 · 0 评论 -
System.gc()的理解
System.gc()的理解package com.atguigu.java;/** * @author shkstart shkstart@126.com * @create 2020 14:49 */public class SystemGCTest { public static void main(String[] args) { new SystemGCTest(); System.gc();//提醒jvm的垃圾回收器执行gc,但是不确定原创 2020-09-01 14:14:07 · 321 阅读 · 0 评论 -
增量收集算法、分区算法
增量收集算法、分区算法1.增量收集算法2.分区算法原创 2020-09-01 10:41:13 · 430 阅读 · 5 评论 -
分代收集算法
分代收集算法原创 2020-09-01 10:25:17 · 239 阅读 · 0 评论 -
小结
小结原创 2020-09-01 10:06:15 · 188 阅读 · 0 评论 -
垃圾清除阶段算法之标记-压缩(整理)算法
垃圾清除阶段算法之标记-压缩(整理)算法原创 2020-09-01 09:54:44 · 447 阅读 · 0 评论 -
垃圾清除阶段算法之复制算法
垃圾清除阶段算法之复制算法原创 2020-09-01 09:34:17 · 273 阅读 · 0 评论 -
清除阶段:标记-清除算法
清除阶段:标记-清除算法1.垃圾清除阶段2.标记-清除(Mark-Sweep)算法原创 2020-09-01 09:15:33 · 271 阅读 · 0 评论 -
MAT与JProfiler的GC Roots溯源
MAT与JProfiler的GC Roots溯源1.MAT2.获取dump文件原创 2020-09-01 08:55:38 · 437 阅读 · 0 评论 -
对象的finalization机制
对象的finalization机制package com.atguigu.java;/** * 测试Object类中finalize()方法,即对象的finalization机制。 * * @author shkstart * @create 2020 下午 2:57 */public class CanReliveObj { public static CanReliveObj obj;//类变量,属于 GC Root //此方法只能被调用一次 @Ov原创 2020-08-31 21:42:46 · 257 阅读 · 0 评论 -
垃圾标记阶段的算法之可达性分析算法
垃圾标记阶段的算法之可达性分析算法1.概述2.GC Roots3.注意原创 2020-08-31 21:17:06 · 233 阅读 · 0 评论 -
垃圾标记阶段的算法之引用计数算法
垃圾标记阶段的算法之引用计数算法1.对象存活判断2.循环引用package com.atguigu.java;/** * -XX:+PrintGCDetails * 证明:java使用的不是引用计数算法 * @author shkstart * @create 2020 下午 2:38 */public class RefCountGC { //这个成员属性唯一的作用就是占用一点内存 private byte[] bigSize = new byte[5 * 1原创 2020-08-31 20:58:25 · 260 阅读 · 0 评论 -
垃圾回收
垃圾回收1.概述2.面试题3.什么是垃圾4.为什么需要GC5.早期垃圾回收6.Java垃圾回收机制原创 2020-08-31 19:53:55 · 205 阅读 · 0 评论