jvm

组成:类加载器,运行时数据区,执行引擎,本地库接口。
运行时数据区包含,程序计数器,堆 栈 方法区;栈是一块连续的内存空间,存储的有基本数据类型 对象的引用 执行环境上下文 操作指令 生命周期跟随线程;堆中存放对象本身 字符串常量池 java8之后将静态变量从方法区移入堆中,堆内存大小可调-xms-xmx 堆内存分为新生代年老代永久代(jvm调优可设置xx代比例,和垃圾回收器组合),堆区被所有线程共享。
类加载器分类,启动类加载器,扩展类加载器,应用程序类加载器
双亲委派模型,一个类加载器收到类加载请求,不会先自己去加载,而且将这个请求委托给父类加载器完成,每一层都如此,这样就会传递到顶层的启动类加载器中,只有当父加载无法完成加载请求,子类才会去加载
类加载执行过程,加载(根据路径找对应的class文件)-检查加载class文件正确性-准备(分配内存空间)-解析-初始化(静态变量和静态代码块)
判断对象回收,引用计数器(引用+1释放-1为0回收,缺点是不能解决循环引用) GC Roots搜索路径为引用链,没有引用链相连即可回收
垃圾回收器 cms(标记清除法) Serial(单线程串行回收器) Parallel(Serial的多线程版本)
jvm调优工具 jconsole(实时监控) jvisualvm(分析工具)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值