JVM垃圾收集器

1. 垃圾收集器如果说收集算法是内存回收的方法论,那么垃圾收集器就是内存回收的具体实现。虽然我们对各个收集器进行比较,但并非是为了挑选出一个最好的收集器。即使是现在的ZGC,在对吞吐量优先的场景,ZGC可能并不适合。我们需要做的就是根据具体的应用场景选择合适的垃圾收集器。1.1 Serial收集器S

JVM内存分配机制与垃圾回收算法

1. JVM内存分配与回收1.1 对象优先在Eden区分配大多数情况下,对象在新生代中Eden区分配。当Eden区没有足够空间进行分配时,虚拟机将发起一次Minor GC。Minor GC/Young GC:指发生新生代的垃圾收集动作,Minor GC非常频繁,回收速度一般也比较快。Major GC

JVM指令手册

1. 栈和局部变量操作1.1 将常量压入栈的指令指令指令含义aconst_null将null对象引用压入栈iconst_m1将int类型常量-1压入栈iconst_0将int类型常量0压入栈iconst_1将int类型常量1压入操作数栈iconst_2将int类型常量2压入栈iconst_3将int

JVM内存模型深度剖析

1. JVM整体结构及内存模型这里从一个类被加载开始说起,当一个类被加载的时候,会被加载到Java的内存区中,也就是运行时数据区。当然 内存区主要分为堆,栈(线程),本地方法栈,方法区(元空间),程序计数器。1.1 栈(线程)栈也是一块内存区域,就是当程序开始运行的时候,给运行的这个线程单独开辟的一

类加载机制深度剖析

1.类加载过程多个java文件经过编译打包生成可运行jar包,最终由java命令运行某个主类的main函数启动程序,这里首先需要通过类加载器把主类加载到JVM。主类在运行过程中如果使用到其他类,会逐步加载这些类。也就是说,jar包中的类并不是一次性全部加载的,是使用到时候才进行加载。类加载到使用整个

无停顿GC算法,ZGC原理

1. 简介文章翻译的是,Azul Systems很多年前提出的Pauseless GC原文当中实现的算法正是ZGC所采用的2. ZGC介绍基于Region内存布局的,(暂时)不设分代的,使用了读屏障、染色指针和内存多重映射等技术来 实现可并发的标记-整理算法的,以低延迟为首要目标的一款垃圾收集器。3

记一次项目线上的内存暴增以及解决办法

前景提要项目上线了,在开发时一切正常,运行正常,项目上线后,还没运行一个星期,发现项目运行越来越慢,进入后台管理界面用了30秒。当时刚听到这个消息,“怎么可能!!!内测,都还没几个人用呢”,直到我自己打开系统,等了好久才进入系统,信了。线索追踪查看错误日志知道系统出现了问题,但是线上的系统我又碰不到

Java内存模型(Java升级计划1)

Java内存模型JVM什么时候启动类被调用的时候启动JVM线程,再启动其他的线程,包括main线程,也就是JVM线程创建了其他的线程。线程在JVM中是怎么运行的方法区:存放的是一些加载的类信息(类加载器加载classload),常量,static变量,JIT编译后的代码。,也可以出现out of m
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×