堆、栈的区分

1、堆、栈,是两种数据结构。

2、堆,队列优先,先进先出(FIFO—firstinfirstout)

  栈,先进后出(FILO—First-In/Last-Out)

3、堆栈空间分配

  栈(操作系统):由操作系统自动分配释放,存放函数的参数值,局部变量的值等。

  堆(操作系统):一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收

4、缓存方式

  栈:使用的是一级缓存,他们通常都是被调用时处于存储空间中,调用完毕立即释放。

  堆:则是存放在二级缓存中,生命周期由虚拟机的垃圾回收算法来决定

posted @ 2019-07-09 22:20  myy门  阅读(205)  评论(0编辑  收藏  举报