自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 运行时数据区——堆区

一个JVM只有一个堆内存,也是Java内存管理的核心区域。Java堆区在JVM启动的时候被创建,其大小也确认。是JVM管理的最大一块内存空间。《Java虚拟机规范》规定,堆可以处于物理上不连续的内存空间,但在逻辑上它应该被视为连续的。所有线程共享堆空间,在这里还可以划分线程私有的缓冲区(Thread Local Allocation Buffer,TLAB)。

2024-07-31 11:31:55 184

原创 运行时数据区——本地方法栈

并不是所有的JVM都支持本地方法,因为JVM规范并没有明确要求本地方法栈的使用语言、具体实现方式、数据结构。当某个线程调用一个本地方法时,它就进入了一个全新的并且不在受虚拟机限制的世界。它和虚拟机拥有同样的权限。如果JVM产品不打算支持Native方法,也可以无需实现本地方法栈。在HotSpot JVM中,直接将本地方法栈和虚拟机栈合二为一。本地方法栈用来管理本地方法的调用,线程私有。它甚至可以直接使用本地处理器中的寄存器;直接从本地内存的堆中分配任意数量的内存。本地方法可以通过本地方法接口。

2024-07-31 11:30:25 73

原创 运行时数据区(PC寄存器)

很小的一块内存空间,几乎可以忽略不计,也是运行速度最快的存储区域;线程私有,与线程的声明周期一直;任何时间一个程序只有一个方法在执行,即当前方法。程序计数器会存储当前线程正在执行的java方法的jvm指令地址;或者,如果是在执行native方法,则是未指定值(undefined);唯一一个在jvm中没有规定oom问题和没有gc的区域。

2024-07-31 11:28:12 168

原创 运行时数据区——方法区

而Java中的字节码需要数据支持,通常这种数据会很大以至于不能直接存到字节码里,换另一种方式,可以存到常量池,这个字节码包含了指向常量池的引用。默认值则根据操作系统区分,Windows下,-XX: MetaspaceSize默认为21M,-XX: MaxMetaspcaeSize的值是-1,表示没有限制。因为永久代的回收效率很低,在full gc的时候才会触发,而开发中会有大量的字符串被创建,回收效率低,导致永久代空间不足,放到堆中,能及时回收内存。只要常量池中的常量没有被引用,就会被回收。

2024-07-31 11:25:18 62

原创 双亲委派机制

如果一个类加载器收到了类加载的请求,它并不会自己去加载,而是先交给父类的加载器去加载;如果父类加载器还有父类加载器,那么继续向上委托,依次递归请求最终将到达顶层的启动类加载器;如果父类加载器可以完成类加载器任务,就成功返回,如果父类加载器无法完成此加载任务,子加载器才会尝试加载。

2024-07-31 11:20:07 178

原创 JVM系列文章

类加载子系统。

2024-07-31 11:11:57 27

原创 类加载器介绍

类加载子系统只负责从文件系统中加载class文件,class文件在文件开头有特定的文件标识;ClassLoader主要负责class文件的加载,是否运行则由Execution Engine决定;加载的类信息放在一块为方法区的内存空间,其还会存放运行时常量池信息,可能还包括字符串字面量和数字常量。

2024-07-31 11:04:36 187

原创 Java虚拟机

Java虚拟机介绍。

2024-07-31 10:58:47 163

原创 Elasticsearch多值字段,字段内存储string字符串,对值进行去重聚合

Elasticsearch多值字段,字段内存储string字符串,对值进行去重聚合。

2024-07-31 10:48:59 210

原创 Java NIO中的 epoll bug分析与复现

Java NIO中的epoll bug文章目录Java NIO中的epoll bug

2021-09-06 13:58:41 1265

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除