百科问答小站 logo
百科问答小站 font logo



Java中 栈内存的存取速度仅次于寄存器,如何做到的? 第1页

  

user avatar   Ivony 网友的相关建议: 
      

严格的来说,这句话把栈(堆栈)和寄存器相提并论原则上就错了。


这两者完全不对等,没有可比性。


栈(堆栈)的对等的概念是堆,托管堆。

说白了,我们说这个变量在栈上,实际上这个变量说不定已经到了寄存器里面了。那怎么比较什么所谓的栈和寄存器的存取速度呢?


user avatar   jeffz 网友的相关建议: 
      

答案就是栈和堆都是内存,栈不比堆快,都是内存访问,只是访问方式上不同(导致局部性好容易在CPU缓存里)。


吐槽时间到:果然好多人传着传着原因都没了只记得结论了,最后人人都记得栈的速度比堆块,然后还觉得自己好懂底层,简直跟撸完觉得自己性生活满足一样。




  

相关话题

  Java 平台中的 JVM 和 .Net 平台下的 CLR 分别是用什么语言写的? 
  如果一定要在C++和JAVA中选择,是C++还是java? 
  Java 位与0xff 和位或0x00 得到的结果为什么不同? 
  既然Java反射可以访问和修改私有成员变量,那封装成private还有意义么? 
  软件工程本科分方向,.NET和Java选哪个好? 
  Java 为什么不支持多继承? 
  有没有那么一次,Java让你欣喜若狂? 
  为什么Go的web框架速度还不如Java? 
  Qt 真的比 Java 更加跨平台吗? 
  如何评价"Null reference - my billion-dollar mistake"? 

前一个讨论
极路由偷偷上传?
下一个讨论
灭霸和一拳超人谁厉害?





© 2025-03-30 - tinynew.org. All Rights Reserved.
© 2025-03-30 - tinynew.org. 保留所有权利