jvm
white_zzZ
这个作者很懒,什么都没留下…
展开
-
jvmGC(GarbageCollection)机制
GC 是什么? 为什么要有 GC? Java 提供的 GC 功能可以自动监测对象是否超过作用域从而达到自动回收内存的目的 Java 语言没有提供释放已分配内存的显示操作方法。 如何确定对象为垃圾可以回收 1. 引用计数法: 所谓引用计数法就是给每一个对象设置一个引用计数器,每当有一 个地方引用这个对象时,就将计数器加一,引用失效时,计数器就 减一。当一个对象的引用计数器为零时,说明此对象没有...原创 2020-01-20 00:39:32 · 236 阅读 · 0 评论 -
jvm类加载机制
加载机制 JVM类加载机制分为五个部分:加载,验证,准备,解析,初始化。 加载 通过一个类的全限定名获取该类的二进制流。 将该二进制流中的静态存储结构转化为方法去运行时数据结构。 在内存中生成该类的 Class 对象,作为该类的数据访问入口。 验证 主要目的是确保class文件中的字节流的信息不回危害到虚拟机 文件格式验证:验证字节流是否符合 Class 文件的规范,如 主次版本号是...原创 2020-01-18 00:20:18 · 85 阅读 · 0 评论 -
java IO模型(BIO、NIO、AIO)
BIO 传统的一种IO模型,即在读写数据过程中会发生阻塞现象。当用户线程发出IO请求之后,内核会去查看数据是否就绪,如果没有就绪就会等待数据就绪,而用户线程就会处于阻塞状态,用户线程交出CPU。当数据就绪之后,内核会将数据拷贝到用户线程,并返回结果给用户线程,用户线程才解除block状态。典型的阻塞IO模型的例子为:data = socket.read();如果数据没有就绪,就会一直阻塞在rea...原创 2020-01-12 20:30:44 · 201 阅读 · 0 评论 -
jvm内存模型 基于1.8
jvm内存模型 一、简要模型 在jdk1.8之前 jdk1.8之后 两个版本之间的区别 元数据区取代了永久代的方法区。元空间的本质和永久代类似,都是对JVM规范中方法区的实现。不过元空间与永久代之间最大的区别在于:元数据空间并不在虚拟机中,而是使用本地内存。 二、各区域详细介绍 1. 程序计数器 一块较小的内存空间, 是当前线程所执行的字节码的行号指示器,每条线程都要有一个独立的 程...原创 2020-01-11 22:08:22 · 249 阅读 · 0 评论