
JVM
文章平均质量分 79
JVM
sql2008help
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JVM-(6)JVM GC
JVM GC GC (Gabage Collection),即垃圾收集器 什么是垃圾 没有引用指向的对象就可以称为垃圾 Java 与 C++ 垃圾处理异同 如何寻找垃圾 ① 引用计数法 (reference count) 在对象中添加一个引用计数器,每当有一个地方引用它时,计数器的值就会加一;当引用失效时,计数器的值就会减一;只要任何时刻计数器为零的对象就是不会再被使用的对象。虽然这种判断方式非常简单粗暴,但是往往很有用原创 2022-05-10 16:36:20 · 196 阅读 · 0 评论 -
JVM-(10)JVM常见的一些问题
指令重排 什么是指令重排 CPU 为了提高指令执行效率,在执行某些耗时的指令(比如从内存中读取数据)时,会同时去执行其他与这条指令没有依赖关系的指令,使得原本的指令执行顺序改变 指令重排带来的问题 对于单线程而言指令重排几乎不会带来任何影响,因为指令重排的前提是保证串行语义执行的一致性,不能影响最终的结果,但对于多线程环境而言,指令重排就可能导致严重的程序轮序执行问题 如何禁止指令重排 使用 volatile 关键字 volatile 是如何禁止指令重排的 通过插入内存屏障禁止在内存屏障前后的指令执行重排序原创 2022-05-10 16:19:38 · 143 阅读 · 0 评论 -
JVM-(3)Class 加载过程
Class 加载过程 承接上篇 Class 文件格式 loading : 指.class文件加载到内存的过程 verfication : 核实.class文件是否符合JVM规范 preparation:给class静态变量赋默认值 initializing:静态变量赋初始值 类加载器 JVM是通过类加载器(ClassLoader)加载 class 文件到内存的,包括以下两个步骤: 开辟内存区域存放.class二进制文件 生成一个Class类对象,这个Class对象指向了二进制文件 Java 中有原创 2022-04-04 00:07:55 · 763 阅读 · 0 评论 -
JVM-(2)Class File Format
Class File Format 在上一篇JVM入门文章中,我们了解到 JVM 之所以是跨语言的平台,是因为 JVM 通过解释.class 文件执行程序,所以各种语言只要能依照class文件格式标准正确编译成 .class 文件就可以被 JVM 执行,本篇将简单介绍 .class 文件格式。 Class 文件概述 Class文件是一组以8位字节为基础单位的二进原创 2022-04-03 15:11:58 · 454 阅读 · 0 评论 -
JVM-(1)JVM入门
JVM入门 JVM(Java Virtual Machine),即Java虚拟机,它是一个将.class(字节码)文件翻译成特定平台下的机器码并运行的虚拟计算机 了解JVM前先回忆下我们写的第一个Java程序是如何执行的: public class Test{ public static void main(String[] args) { System.out.println("hello"); } } ① 使用 javac 命令来编译 Java 文件 ② 使用 java 命令原创 2022-04-02 22:40:36 · 633 阅读 · 0 评论