java gc负责堆的内存释放,那栈的内存是怎么管理,释放的。 2C

java gc负责堆的内存释放,那栈的内存是怎么管理,释放的

2个回答

Java中是通过栈帧来维护的,每调用方法的时候,就会创建栈帧,然后栈帧中有一个局部变量表,当函数调用结束的时候,这个栈帧就会自动释放,局部变量也被释放了

所以栈的内存都是随着函数的开始执行和结束自动分配,释放的

栈:线程私有,每个线程都会创建一个虚拟机栈,生命周期与线程相同。每个方法被执行的时候就会创建一个栈帧,用于存储局部变量表,操作数栈,动态链接,方法出口等信息。一个方法执行的过程对应着一个栈帧的入栈到出栈过程。

有不清楚可以看下这篇文章:http://blog.csdn.net/chenbaige/article/details/57115858

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!