JVM
183090792csdn
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JVM调优步骤
一、熟悉业务优先响应还是优先吞吐量二、计算内存三、确定GC组合四、选定CPU,预算范围内越大越好五、设定分代年龄六、设定日志参数将GC日志输出到文件七、观察日志原创 2020-07-31 09:02:50 · 359 阅读 · 0 评论 -
JVM系列之二:ClassLoad 详解
类加载器的目的就是根据一个类的全限定名来读取此类的二进制字节流到JVM中,然后转换为一个与目标类对应的 java.lang.Class对象实例。当一个类加载器接收到一个类加载的任务时,先去缓存里面找有没有任务对象,如果没有不会立即展开加载,而是将加载任务委托给它的父类加载器去执行,每一层的类都采用相同的方式,直至委托给最顶层的启动类加载器为止。如果父类加载器无法加载委托给它的类,便将类的加载任务退回给下一级类加载器去执行加载,如果所有的加载器都无法加载,则会抛一个ClassNotFoundExcep原创 2020-06-26 01:00:04 · 752 阅读 · 0 评论 -
JVM系列之三:JVM之java类型生命周期详解
前一篇文章详细的描述了 java class 文件的格式 。它以标准的二进制形式来表现java 类型。现在我们再来看看当二进制的类型数据被导入到java虚拟机中的生命周期是什么样子的,下文所说的生命周期指的是 java 类型二进制的类型数据被导入到java虚拟机中的生命周期的。生命周期可分为 装载、连接、初始化、对象实例化、垃圾收集、对象终结以及卸载 7个阶段。接下来我们对这些阶段一一解释。 装载 装载由三个基本动作完成:1、通过该类型的完全限定名,产生一个代表该类型的二进制数据流 2、解析..原创 2020-06-26 19:20:14 · 231 阅读 · 0 评论 -
JVM系列之一:ClassFileFormat 详解
代码敲了很久,但是一直没有怎么去研究他的整个的过,最近有时间就研究了一下,总结后就写了JVM系列的博客,以便总结与回顾。java从编码到执行的过程如下图所示:java 文件通过 javac 编译后成 class 文件,class 文件由 classLoader 加载进 JVM ,加载后由字节码解释器解释后交给执行引擎,最后由执行引擎交给操作系统供其调用 。当某个文件执行的非常平凡的时候就会由JIT(即时编译器)编译,下次再执行的时候就不要解释器再一句一句的解释执行,效率会高很多。一般情况下都是.原创 2020-06-25 19:36:58 · 1010 阅读 · 1 评论 -
2019年JVM最新面试题
1、JVN内存结构方法区和对是所有线程共享的内存区域;而java栈、本地方法栈和程序员计数器是运行是线程私有的内存区域。Java堆(Heap),是Java虚拟机所管理的内存中最大的一块。Java堆是被所有线程共享的一块内存区域,在虚拟机启动时创建。此内存区域的唯一目的就是存放对象实例,几乎所有的对象实例都在这里分配内存。 方法区(Method Area),方法区(Meth...原创 2019-09-17 09:29:44 · 278 阅读 · 0 评论
分享