網站首頁 文學常識 簡歷 公文文書 文學名著 實用文 人生哲理 作文 熱點話題作文
當前位置:文萃咖 > 知識文庫 > 知識問答

堆和棧的區別

欄目: 知識問答 / 發佈於: / 人氣:2.06W

空間分配區別

棧(操作系統):由操作系統(編譯器)自動分配釋放,存放函數的參數值,局部變量的值等。其操作方式類似於數據結構中的'棧。堆(操作系統):一般由程序員分配釋放,若程序員不釋放,程序結束時可能由OS回收,分配方式倒是類似於鏈表。

堆疊緩存方式區別

棧使用的是一級緩存,它們通常都是被調用時處於存儲空間中,調用完畢立即釋放。堆則是存放在二級緩存中,生命週期由虛擬機的垃圾回收算法來決定(並不是一旦成為孤兒對象就能被回收)。所以調用這些對象的速度要相對來得低一些。

Tags: