你知道堆和栈的区别是什么吗 栈为什么效率比堆高呢
堆和栈的区别是什么
1、堆栈空间分配区别
栈(操作系统):由操作系统(编译器)自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。
堆(操作系统): 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收,分配方式倒是类似于链表。
2、堆栈缓存方式区别
栈使用的是一级缓存, 它们通常都是被调用时处于存储空间中,调用完毕立即释放。
堆则是存放在二级缓存中,生命周期由虚拟机的垃圾回收算法来决定(并不是一旦成为孤儿对象就能被回收)。所以调用这些对象的速度要相对来得低一些。
3、堆栈数据结构区别
堆(数据结构):堆可以被看成是一棵树,如:堆排序。
栈(数据结构):一种先进后出的数据结构。
栈为什么效率比堆高
总结如下:
1、有寄存器直接对栈进行访问(esp,ebp),而对堆访问,只能是间接寻址。
也就是说,可以直接从地址取数据放至目标地址;使用堆时,第一步将分配的地址放到寄存器,然后取出这个地址的值,然后放到目标地址。
2、栈中数据cpu命中率更高,满足局部性原理。
3、栈是编译时系统自动分配空间,而堆是动态分配(运行时分配空间),所以栈的速度快。
4、栈是先进后出的队列结构,比堆结构相对简单,分配速度大于堆。
“堆”和“栈”并不是数据结构上的Heap跟Stack,而是程序运行中的不同内存空间。
那么这就简单了,栈是程序启动的时候,系统分好了给你的,你自己用,系统不干预。
堆是用的时候才向系统申请的,用完了还回去,这个申请和交还的过程开销相对就比较大了。
栈与堆都是Java用来在Ram中存放数据的地方。
栈中主要存放一些基本类型的变量(,int, short, long, byte, float, double, boolean, char)。存在栈中的数据可以共享。栈的优势是,存取速度比堆要快,仅次于寄存器,栈数据可以共享。但缺点是,存在栈中的数据大小与生存期必须是确定的,缺乏灵活性。
堆是一个运行时数据区,类的(对象从中分配空间。由于要在运行时动态分配内存,存取速度较慢。存在栈中的数据可以共享。
栈是编译时分配空间,而堆是动态分配(运行时分配空间),所以栈的速度快
cpu有专门的寄存器(esp,ebp)来操作栈,堆都是使用间接寻址的。栈快点
作者:星期天去哪玩o
链接:https://www.jianshu.com/p/27c0fc1aecab
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
推荐
-
RedmiK50大容量版本今天上午开启预售 支持OIS光学防抖
在Redmi Note 11T系列发布会上,Redmi推出了K50 12GB+512GB大容量版本,该版本将于5月26日上午10点开...
来源: -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
RedmiNote11TPro+上手体验 天玑8100和144Hz顶级屏加持
随着Note系列用户群体的不断壮大,以及愈加多元化的用户需求,Redmi对Note系列的产品进行了重新规划,在...
来源: -
-
RedmiK50大容量版本今天上午开启预售 支持OIS光学防抖
在Redmi Note 11T系列发布会上,Redmi推出了K50 12GB+512GB大容量版本,该版本将于5月26日上午10点开...
来源: -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
RedmiBookPro2022锐龙版发布 搭载锐龙6000系列处理器
今晚的小金刚发布会上,卢伟冰还正式公布了全新旗舰笔记本——RedmiBook Pro 2022锐龙版。RedmiBook ...
来源: -
Redmi发布千元档新品 联发科天玑700处理器
今天晚上,Redmi Note系列新品发布,除了Redmi Note 11T Pro、Redmi Note 11T Pro+之外,Redmi还...
来源: -
-
-
-
财富更多》
-
性价比最高的骁龙870平板 realmePad本月发布
今天,博主@数码闲聊站爆料,realme Pa...
-
市场监管总局:公布2022年国家计量比对项目 涉及食品安全、生物制药等领域
市场监管总局:公布2022年国家计量比对...
-
调动更多金融“活水” 纾困滋养小微企业发展
调动更多金融“活水”纾困滋养小微企业...
-
网络市场监管与服务示范区创建办法实施 助力网络经济发展
网络市场监管与服务示范区创建办法实施...
-
市场监管总局:网络市场监管与服务示范区创建管理办法发布实施
市场监管总局:网络市场监管与服务示范...
动态更多》
热点
- 长城WEY全新复古SUV圆梦实车曝光 配有全液晶仪表盘
- realme火影忍者联名版手机真机曝光 情怀简直拉满
- RedmiNote11TPro+上手体验 天玑8100和144Hz顶级屏加持
- 一加联合创始人裴宇宣布新品牌Nothing 将有全透明后壳
- RedmiBookPro2022锐龙版发布 搭载锐龙6000系列处理器
- Redmi发布千元档新品 联发科天玑700处理器
- 云米K激光投影仪上市 在家也能享受影院级的沉浸式体验
- 全球快的电竞显示器来了 华硕发布500+Hz超高刷新率显示器
- 大众全新入门级电动车曝光 将与比亚迪海豚竞争
- 旗舰机皇重磅回归 微星泰坦GT77将于6月7日发布
- 联想小新Pad2022新品发布 采用双色双材质拼接设计
- 荣耀70Pro官方渲染图曝光 沿用前代四曲面屏幕
- 小米12Ultra最新渲染图曝光 边框和四角都圆润了
- 史上最强双屏轻薄本 华硕灵耀X双屏Pro2022开箱
- iPhone14相关包装盒被曝出 竟然有2TB的版本
- 佳能发布史上最小最轻的EOSR系列相机,售价5399元
- 小米首款折叠屏手机礼盒版直降1000元 享受180天只换不修服务
- RedmiNote11T系列正式发布 整机梦幻如晴空浅海
- 云米K激光投影仪上市 在家也能享受影院级的沉浸式体验
- 全球快的电竞显示器来了 华硕发布500+Hz超高刷新率显示器
- 大众全新入门级电动车曝光 将与比亚迪海豚竞争
- 旗舰机皇重磅回归 微星泰坦GT77将于6月7日发布
- realme真我平板X5月26日正式发布 8340mAh大电池
- vivoS15开箱 采用航空级标准的金属中框
- 至高优惠200元 小米618可穿戴预售攻略公布
- 性能提升10%黑鲨新机曝光 搭载骁龙8+处理器
- 史上最好LCD高刷屏 RedmiNote11T系列今天19点正式登场
- 荣耀70系列官宣 搭载天玑9000高端旗舰处理器
- 电脑机箱漏电该怎么解决呢 快来看一下吧
- 电脑死机的原因都有哪些呢 解决方法都有什么呢
- 电脑出现蓝屏现象该怎么解决呢 一起来看一下吧
- 电脑老是重启该怎么解决呢 是哪里的问题呢
- 电脑死机画面定格是怎么回事呢 快来看一下吧
- 电脑开机时屏幕不显示是怎么回事呢 快来看一下吧
- 电脑开机键没反应该怎么解决呢 一起来看一下吧
- 电脑屏幕使用时经常抖动是怎么回事呢 快来看一下吧
- 电脑机械硬盘出现坏道该怎么办呢 可以修复吗
- 电脑键盘按键失灵该怎么解决呢 一起来看一下吧
- 任务管理器消失不见该怎么解决呢 一起来看一下吧
- 笔记本漏电该怎么解决呢 快来看一下吧
- 电脑网线接口灯不亮是怎么回事呢 原因是什么呢
- 笔记本电脑屏幕出现条纹该怎么办呢 有什么解决方法吗
- 笔记本电脑无线网络受限制该怎么解决呢 操作步骤是什么呢
- 360安全浏览器经常出现白屏是怎么回事 该怎么解决呢
- 电脑连接WiFi容易断线是怎么回事呢 该怎么解决呢
- 电脑出现鼠标失灵是怎么回事呢 一起来看一下吧
- 电脑每次开机都要重新设置时间该怎么解决呢 快来看一下吧
- 电脑弹窗显示无法定位序数该怎么解决呢 一起来看一下吧
- 电脑黑屏该怎么重装系统呢 操作步骤是什么呢
- 电脑插上U盘不显示是怎么回事呢 是哪里出现问题了
- 电脑启动不起来该怎么办呢 有什么解决方法吗
- 电脑开机显示器没有信号是怎么回事 有什么解决办法吗
- 电脑主机启动不了是怎么回事呢 开机无反应该怎么解决呢
- 电脑黑屏的原因是什么呢 造成黑屏的原因是什么呢
- 方太集成烹饪中心正在掀起集成新浪潮
- 造成电脑死机的原因是什么呢 有什么解决方法吗
- 电脑开机蓝屏是怎么回事呢 该怎么解决呢
- 电脑主机一直嗡嗡的响是什么原因 该怎么解决呢
- 电脑重装系统后无法上网该怎么解决呢 一起来看一下吧
- 2899元起!小米12满血版小屏骁龙8旗舰诞生
- OPPOK10降至1799元 全球首发天玑8000MAX处理器
- iPhone14前摄升级 支持自动对焦镜头
- 小米推出米家直驱洗烘一体机10kg简白版 预售到手价1999元
- 机械革命17英寸大屏游戏本公布 240Hz高刷新率
- 小米电视ESPro86英寸发布 搭载四核A73旗舰处理器
- OPPOPadAir正式发布 非常实惠的大屏幕学习神器
- OPPOEncoR真无线耳机发布 售价299元起
- 首发高通新骁龙7 OPPOReno8Pro正式登场
- 小米11Ultra迎来超狠价 影像机皇到手3999元起
- vivo44W闪充移动电源开卖,售价299元
- 长城全新SUV圆梦实拍图曝光 形似上海滩里的老爷车
- 荣耀70Pro参数配置曝光 搭载天玑8000处理器
- RedmiK50官宣降价 2199元起堪称天玑8100性价王者
- 魅族开启618大促 魅族18X限时立省700元
- realme国内首款平板曝光 搭载11英寸2K超清大屏
- 科大讯飞发布新款智能办公本 语音转写准确率高达98%
- 铁臂阿童木手办来了 RedmiNote11T系列新机即将发布
- 摩托罗拉新旗舰将于7月份登场 开启2亿像素摄影时代
- 小米推出全新米家智能空气炸锅Pro4L 售价399元
- realme官宣火影忍者联名定制新品 包装设计以卷轴为元素
- 2022款唐EV正式开启预售 24小时订单已达8505台
- 小米首款激光打印一体机K200上架 今晚开启预售
- 联发科天玑1050处理器发布 首款支持5G毫米波的移动平台
- 小米与徕卡达成全球影像战略合作 高端旗舰7月份登场
- 小米将推出新款86英寸旗舰电视 价格有望突破万元
- 2999元起 摩托罗拉edgeX30屏下摄像版开启618秒杀
- 小米12Ultra渲染图曝光 居中挖孔曲面屏和多主摄方案
- 小米与徕卡达成全球影像战略合作 首款作品将于7月份登场
- 电脑重装系统后无法上网是怎么回事呢 一起来看一下吧
- shx格式的文件该怎么打开呢 常用的方法有哪些
- 你知道怎么看电脑有没有声卡吗 没有该怎么办呢
- 输入法切换不出来是怎么回事呢 有什么方法解决吗
- 电脑插上耳机依旧有外音是怎么回事呢 该怎么解决呢
- 你知道GIF动图怎么保存到电脑吗 一起来看一下吧
- 你知道如何快速删除电脑自带桌面主题吗 快来看一下吧
- 你知道如何解除电脑自动还原吗 一起来看一下吧
- 电脑反应慢是怎么原因导致的呢 一起来看一下吧
- 物理内存使用率高该怎么办呢 一起来看一下吧
- 笔记本内存低压和标压可以混用吗 一起来看一下吧
- 你知道如何让电脑更干净快速吗 有什么优化方法吗
- IPv6网络的作用是什么呢 一起来看一下吧
- C盘空间满了该怎么清理呢 一起来看一下吧
- 网吧电脑为什么没有硬盘呢 这样的电脑有什么优点吗
- 你知道怎样拦截电脑弹窗广告吗 有什么软件可以用吗
- 电脑运行太慢该怎么办 有什么方法让电脑全面提速吗
- 你知道电脑怎么安装读卡器驱动吗 快来看一下吧
- 你知道电脑中如何禁止软件静默安装吗 一起来看一下吧
- 你知道怎么降低电脑功率吗 一起来看一下吧
- 电脑内存使用率过高有什么方法解决吗 一起来看一下吧
- 电脑C盘空间爆满该怎么解决呢 有什么常用的方法呢
- 电脑卡顿该怎么彻底解决呢 有什么方法吗
- 电脑误删数据还能恢复吗 一起来看一下吧
- 浏览器自动关闭的原因是什么呢 一起来看一下吧
- 如何彻底删除U盘文件呢 一起来看一下吧
- 你知道如何查看网络适配器吗 一起来看一下吧
- 小米满血小屏旗舰来了 小米12降至3199元
- 获得场景视频:虚拟人+元宇宙直播,重构直播营销新场景
- 首发12999元 LG发布新款900OLED显示器
- 小米12Ultra确认搭载骁龙8+ 性能提升10%
- 首发优惠30元 中兴AX3000路由器巡天版明天预售
- 2022年5月23日科技工作者法律服务活动正式启动
- 小米12X价格再创历史最低 300元特惠到手价低至2399元
- vivo新一代入门机Y72t上线 内置6000mAh超大容量电池
- 小米手环7NFC版包装首曝光 1.62英寸AMOLED全面屏
- 比亚迪新款唐EV正式开启预售 百公里加速仅4.4秒
- 联想公布小新Pad2022平板电脑配置 骁龙680处理器
- OPPOReno8系列外观曝光 天玑8100窄边框直屏天花板
- realmeGTNeo3开启秒杀 支持OIS光学防抖
- 摩托罗拉edgeX30降至新低 到手价2769元
- Redmi最强机皇曝光 搭载骁龙8+将是新一代性价之王
- 向千元机耳机降噪发起挑战 RedmiBuds4Pro即将发布
- 惠普发布程序员专用笔记本 16GB内存售价7355元起
- 首批支持蓝牙5.3技术 卢伟冰公布Note11T系列新功能
- RedmiNote11TPro+正式发布 6400万像素超清主摄登场
- 摩托罗拉Razr3真机曝光 全球首款骁龙8+旗舰来了