请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

栈中数据是共享的?

1-5章节; 2分38秒, 老师你说栈的数据是共享的, 这里有误吗

正在回答 回答被采纳积分+3

1回答

Jimin 2019-01-09 00:04:34

你好,栈里的数据就是共享的,我猜想里你肯定是想到了JVM里的栈,估计你是想到了局部变量表是存在栈里的,而他们互相之间是不共享的,但是虚拟机栈和本地方法栈都是在栈上的,如果只是把栈理解为局部变量表,那有些浅,不知道我猜测的对不对。

0 回复 有任何疑惑可以回复我~
  • 提问者 宝慕林4309021 #1
    的确我这里想到了局部变量表。那请问老师栈里有哪些数据是共享的呢。
    回复 有任何疑惑可以回复我~ 2019-01-09 01:18:06
  • 提问者 宝慕林4309021 #2
    补充一下。我看不少资料说的虚拟机栈和本地方法栈都是线程私有的
    回复 有任何疑惑可以回复我~ 2019-01-09 01:19:01
  • Jimin 回复 提问者 宝慕林4309021 #3
    局部变量表、虚拟机栈、本地方法栈都是线程私有的,这是没问题的。关于栈,栈的优势是,栈内存与堆内存相比是非常小的,存取速度比堆要快,仅次于寄存器,栈数据可以共享。但缺点是,存在栈中的数据大小与生存期必须是确定的,缺乏灵活性。栈中主要存放一些基本类型的变量(int, short, long, byte, float, double, boolean, char)和对象句柄。栈有一个很重要的特殊性,就是存在栈中的数据可以共享。
    回复 有任何疑惑可以回复我~ 2019-01-09 08:46:03
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信