二.jvm内存模型和深度优化

本文介绍了JVM的跨平台特性,并详细探讨了内存模型的各个组成部分,包括类加载子系统、字节码执行引擎、运行时数据区。在运行时数据区中,详细阐述了栈、堆、方法区等的运作机制,如栈帧、局部变量、操作数栈、动态链接等。同时,讨论了GC(垃圾收集)的工作原理,如Minor GC和Full GC,以及STW(Stop the World)现象对性能的影响。最后,提到了内存分配参数对程序性能的重要性以及监控工具VisualVM和阿里巴巴的Arthas。
摘要由CSDN通过智能技术生成

1.跨平台

主要是JVM(虚拟机)的存在它可以适应不同的平台,java运行在vm之上,所以java就成了跨平台。

ps:javap -c ***.class c查看java对应的反汇编代码(jvm代码执行过程)

2.内存模型

三块类容

        类加载子系统 c++ 主要是加载class

        字节码执行引擎 c++ 执行代码

        运行时数据区 运行时内存的划分 重点理解

栈:线程独享,先进后出,主要存放局部变量、操作数栈、动态链接、方法出口。

特点:

        1.线程执行一个方法则就在栈中创建一个栈帧,是每一个方法都会创建,即使是方法调用方法。

        2.压栈:从程序入口,每一栈帧每一个数据都是从先进后出,意思是先读取的代码就会先在栈中分配内存,后面进来的会在前面的上面创建栈帧(桶机制)

包含:

        1.局部变量:就是方法内部的赋值,包括基本类

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值