浅谈jvm

部门要求每个人都要给大家培训,由于前期工作忙,该讲的都让别人选择走了,以前对jvm一知半解,想借此机会多了解下。

 

1 对jvm的初始印象

         jvm是java实现“口号”的关键,分为 堆(Heap)、栈(Stack)、方法区(Method Area)、程序计数器(Progrom Couter Register),四大部分 。

        其中栈(Stack)有分为:虚拟机栈(VM Stak),本地方法栈(Native Method Stack)。

 

        其中栈(Stack)和程序计数器(Progrom Couter Reister)为线程私有;堆和方法区是所有线程共享的数据区这也是同步的由来。

 

        方法区包括运行时常量池(Runtime Constant Pool);对于习惯了HotSpot虚拟机开发的和部署的人来说,他们把方法区叫做“永久代”(Permanent Genernation) ,本质上两者不等价,仅仅因为HotSpot虚拟机团队把GC的分代收集扩展至方法区,或者说使用永久代来实现方法区而已。

 

       垃圾回收主要发生在堆和栈区。

       经常有人把java的内存区分为堆内存和栈内存,这是比较粗糙的,Java内存区域的划分实际远比这个复杂。这种划分的流行只能说明大多数程序猿最关注的是与对象分配关系最密切的内存区域是这两块。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值