![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
jvm
小乐乐的天台
这个作者很懒,什么都没留下…
展开
-
GC日志详解[乐乐独记]
GC日志详解1、静态分析GC日志1、静态分析GC日志在程序中加上对应的参数生成GC日志在文件中-Xloggc:./gc-%t.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -XX:+PrintGCCause-XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=100M参数含义-Xloggc:./原创 2020-07-10 22:16:32 · 10303 阅读 · 0 评论 -
JVM调优以及Arthas简单使用
JVM调优1、JVM命令1、jps(查看本地运行进程)2、Jmap3、Jstack1、JVM命令1、jps(查看本地运行进程)进程号 应用2、JmapJmap命令可查看内存信息,实例个数以及占内存大小,接下来介绍几个具体命令:1、Jmap -histo 进程号一般情况会输出到文件里:Jmap -histo 进程号 > xxx.txt输入在当前这一时刻这个程序进程对应的对象实原创 2020-07-08 18:02:20 · 4497 阅读 · 0 评论 -
通过JVM字节码文件发现的一些小知识点
通过JVM字节码文件发现的一些小知识点1、操作数栈是在什么时候确定的2、为什么我们在实例方法中可以调用this呢?3、常量池究竟是一个什么东西?4、java中一个类最多能实现多少接口?5、为什么我们在编译代码的时候会抛出我们的哪一行代码没有通过编译?为什么会直接抛出行号?我们以这个程序去探讨package JVM;public class Compile { public static int data = 22; public String compile(String engSt原创 2020-06-23 19:59:33 · 210 阅读 · 0 评论 -
JVM对象创建、内存分配以及回收机制深度刨析
JVM对象创建、内存分配以及回收机制深度刨析1、对象的创建(new)2、对象的内存分配3、判断进入老年代的方法1、发生gc回收2、大对象直接进入老年代3、长期存活的对象进入老年代4、动态年龄判断机制5、老年代空间分配担保机制4、对象的回收机制1、判断是否是垃圾对象的算法1、引用计数法2、可达性分析算法2、常见的引用类型3、finalize()的自救5、辅助知识1、对象分配内存时并发问题的解决2、使用jol‐core查看对象头信息3、为什么要有指针压缩4、如何判断一个类是无用的类1、对象的创建(new)原创 2020-06-22 19:58:36 · 1196 阅读 · 2 评论 -
JVM整体结构深度刨析
JVM整体结构深度刨析1、JDK体系与跨平台1、jdk体系结构图2、Java语言的跨平台特性2、JVM内存模型1、JVM的整体模型图2、内存模型的概念介绍3、栈和局部变量的操作4、堆模型详解1、JDK体系与跨平台1、jdk体系结构图从图中我们可以看出jdk包含jre,整个的运行库函数以及JVM都是在jre下面的,jdk独特包含的就是一些工具和api命令jdk全称“Java Development ToolKit”jre全称“Java Runtime Environment”2、Java语言原创 2020-06-18 18:19:33 · 472 阅读 · 0 评论 -
Java类加载机制深度刨析
Java类加载机制深度刨析1、如何运行Java文件2、一个Java类从加载到运行的过程3、Java类加载(LoadClass)的过程1、如何运行Java文件java文件运行时需要两个命令javac和java//javac编译生成一个.class文件javac HelloWorld.java//java命令运行HelloWorld文件java HelloWorld2、一个Java类从加载到运行的过程特别提示:类似于java.exe、javac.exe、jvm以及引导类加载器实例都是由C或原创 2020-06-14 18:27:45 · 241 阅读 · 1 评论