JVM
文章平均质量分 88
JVM
sql2008help
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JVM-(11)JVM-定位OOM问题
OOM 即 OutOfMemoryError(内存溢出),是由于 JVM 的垃圾回收器 (Garbage Collector) 无法回收出足够的空间来满足对象分配的请求,并且堆内存已经无法再扩大容量导致的异常。原创 2025-08-26 16:21:11 · 1065 阅读 · 0 评论 -
JVM-(10)JVM常见的一些问题
指令重排什么是指令重排CPU 为了提高指令执行效率,在执行某些耗时的指令(比如从内存中读取数据)时,会同时去执行其他与这条指令没有依赖关系的指令,使得原本的指令执行顺序改变指令重排带来的问题对于单线程而言指令重排几乎不会带来任何影响,因为指令重排的前提是保证串行语义执行的一致性,不能影响最终的结果,但对于多线程环境而言,指令重排就可能导致严重的程序轮序执行问题如何禁止指令重排使用 volatile 关键字volatile 是如何禁止指令重排的通过插入内存屏障禁止在内存屏障前后的指令执行重排序原创 2022-05-10 16:19:38 · 171 阅读 · 0 评论 -
JVM-(9)JVM诊断的常用命令以及参数
在上文中我们了解了如何启动 JVM ,以及在启动时如何添加参数,不同于 Java 命令,JVM 诊断命令是用来诊断运行中的 JVM 的。原创 2025-08-26 10:06:25 · 758 阅读 · 0 评论 -
JVM-(8)JVM启动的常用命令以及参数
在上文中已经使用过一些 jvm 启动命令,本文着重讲述JVM启动命令用法以及一些常用的参数。原创 2025-08-22 10:24:32 · 881 阅读 · 0 评论 -
JVM-(7)堆内存逻辑分区
在这篇文章中我们了解了JVM 内存的逻辑分区情况,如下:在这篇文章中我们了解到,如果某个对象不再被使用就会被当成垃圾,而新建对象一般分配堆空间内存(大部分情况如此,Java对象在特定条件下可以在栈上分配内存)哪些情况Java对象可以在栈上分配内存?对象若满足以下条件,JVM会将其分配到栈上:1. 作用域受限:对象仅在方法内部使用,未被外部引用(如未作为返回值或被其他线程访问)。2. 小对象:通常指几十字节以内的小对象。3. 线程私有:仅被当前线程使用,不会跨线程共享。。原创 2025-08-21 15:25:52 · 1125 阅读 · 0 评论 -
JVM-(6)JVM GC
JVM GCGC (Gabage Collection),即垃圾收集器什么是垃圾没有引用指向的对象就可以称为垃圾Java 与 C++ 垃圾处理异同如何寻找垃圾① 引用计数法 (reference count) 在对象中添加一个引用计数器,每当有一个地方引用它时,计数器的值就会加一;当引用失效时,计数器的值就会减一;只要任何时刻计数器为零的对象就是不会再被使用的对象。虽然这种判断方式非常简单粗暴,但是往往很有用原创 2022-05-10 16:36:20 · 234 阅读 · 0 评论 -
JVM-(5)JVM内存模型
JVM由 运行时数据区、类加载器、执行引擎 等部分组成,在这篇文章中我们可以了解到,JVM是通过类加载器将 java 文件编译后的 .class 二进制文件加载到内存的,那么java程序在执行的过程中内存是如何分配的呢,本文将介绍这部分,通常说的 JVM内存模型指的就是分为 线程共享区 和 线程私有区线程共享区。原创 2025-08-18 10:39:46 · 981 阅读 · 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 · 812 阅读 · 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 · 485 阅读 · 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 · 660 阅读 · 0 评论
分享