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



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

  

user avatar   Ivony 网友的相关建议: 
      

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


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


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

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


user avatar   jeffz 网友的相关建议: 
      

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


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




  

相关话题

  Java如何打好牢固的基础? 
  为什么内存表面是粗糙的,CPU是很光滑的? 
  谁能用通俗的语言解释一下什么是 RPC 框架? 
  Java 8 的 stream API 和 C# 的 LINQ 哪个更慢? 
  当年谷歌为什么不收购sun?而让Oracle买了去呢? 
  为什么现在部分985高校还是给大一上C语言课? 
  代码结构中Dao,Service,Controller,Util,Model是什么意思,为什么划分? 
  C++ 和 Java 同样是静态语言,为什么 Java 的代码提示可以做的十分强大? 
  买了《阿里巴巴JAVA开发手册》的人,后悔了吗? 
  内存为啥要分堆栈在编程里,要是全部只用堆或者全部只用栈,行不行? 

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





© 2024-11-24 - tinynew.org. All Rights Reserved.
© 2024-11-24 - tinynew.org. 保留所有权利