JVM知识--栈

一.内存模型

1.线程私有区:每个线程里有虚拟机栈,本地方法栈(执行native方法的区域)和程序计数器

2.线程共享区。包括方法区和堆。

3.虚拟机栈:就是平时理解的栈。栈帧:先进后出的每个元素,都可称为栈帧。进出栈的元素,就是栈帧

 -Xss:设置栈的默认大小。每个线程开启栈时,都开启一块儿内存。

栈内存溢出异常:StackOverFlow异常。

栈帧:包括局部变量表:存放局部变量。方法中定义的局部变量。

           操作数栈:类似于操作系统中的缓存。

栈中还有程序计数器,记录当前线程执行指令的行号。程序计数器不会发生内存溢出。

原文地址:https://www.cnblogs.com/hongyuansu/p/13831528.html