justifysd 2016-04-03 15:26 采纳率: 50%
浏览 1265

怎么分辨堆,栈的情况

堆和栈对于cpu影响到底有多少?Java在什么情况下要考虑堆栈问题?谢谢各位大牛

  • 写回答

3条回答

  • 毕小宝 博客专家认证 2016-04-03 23:37
    关注
    首先,堆和栈和CPU没有关系,也不是我们能使用的,我们开发中没有操作堆和栈的权利;堆和栈是Java虚拟机的内存模型中的两种不同的内存模型,各自有自己的作用。其次,堆是虚拟机存放Java对象的地方,所有我们代码中new的对象都存在堆内存中的,而方法中定义的变量即赋值语句左侧的变量都是存在栈中的。栈的作用是实现Java方法调用的内存模型。最后,堆是所有线程共享的内存区域,所以堆中对象的并发访问可能会涉及同步问题,而栈是线程私有的,Java虚拟机会为每个创建的线程都分配一个线程栈的。
    
    评论

报告相同问题?

悬赏问题

  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿