12.初识 jvm

本文详细介绍了Java虚拟机(JVM)的核心概念和技术细节,包括JVM的组成、内存区域划分、垃圾回收机制及调优策略等。通过本文,读者可以了解JVM的工作原理,如方法区、栈区与堆区的区别,以及如何避免内存溢出等问题。

1.jvm:java的虚拟机,运行于操作系统之上,不直接接触硬件。

2.jvm图解:

3.双亲委派机制:可以防止java代码遭受恶意破环,也就是会先加载父类的方法,而父类不存在时候才会调用自身的。比如,自己定义一个java.Lang.String的时候就会出错,因为string类已经存在的了。

4.native interface本地接口(native也是java的关键字)

java语言不能对操作系统进行访问和操作,但是可以调用其他TNI接口来实现。

5.pc寄存器

也就是每个线程所私有的程序计数器,也就是指向下一条指令的

6.main方法是放在栈中,其他的一般方法也是

7.方法区:是程序共享的,保存的都是可以共享的信息,比如常量,静态变量

8.栈区:存局部变量,定义的参数,比如int,char之类的,以及调用现场存在栈区,在函数结束时,系统会自动收回存储单元。

9.堆区:放置new出来的对象或引用,(又分为新生区,养老区)

10.堆的调优

-xms:初始化分配大小,默认为电脑内存的1/64;

-xmx:最大的内存,默认为电脑内存的1/4;

-xx~~~:输出详细的GC处理日志

11.oom异常

这就是堆内存溢出异常,比如不停的给string添加字符串,就会不停的创造新的对象,就会导致堆内存溢出。

12.MAT:一种查看堆内存溢出的插件,分析dump文件。

 

转载于:https://www.cnblogs.com/weichenchq/p/8583858.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值