記憶體溢位與記憶體洩露

2021-09-24 11:00:46 字數 483 閱讀 5341

2019獨角獸企業重金招聘python工程師標準》

兩者的區別:

記憶體溢位 (out of memory) : 指程式在申請記憶體時,沒有足夠的記憶體空間供其使用,出現out of memory;比如申請了乙個integer,但給它存了long才能存下的數,那就是記憶體溢位。

記憶體洩露 (memory leak): 指程式在申請記憶體後,無法釋放已申請的記憶體空間,一次記憶體洩露危害可以忽略,但記憶體洩露堆積後果很嚴重,無論多少記憶體,遲早會被占光。

打個比方說:

記憶體溢位就是:我向你借錢,你沒這麼多!我崩潰。

記憶體洩漏就是:我向你借錢,你有,我不還了,你忍了;我向你借錢,你有,我不還了,你忍了;。。。。;但總有一天,你終歸忍無可忍,也會沒錢。

簡單的說:

記憶體溢位就是分配不能夠。

記憶體溢位就是**沒能夠。

兩者的關係:

memory leak會最終會導致out of memory!

記憶體溢位,與記憶體洩露

記憶體洩漏 memory leak 是指程式在申請記憶體後,無法釋放已申請的記憶體空間 只出不進漏氣一樣 記憶體溢位 就是你要的記憶體空間超過了系統實際分配的空間,此時系統相當於沒法滿足你的需求,就會報記憶體溢位的錯誤 比方說棧,棧滿時再做進棧必定產生空間溢位,叫上溢,棧空時再做退棧也產生空間溢位,...

java 記憶體溢位與記憶體洩露

記憶體溢位 out of memory 是指程式在申請記憶體時,沒有足夠的記憶體空間供其使用,出現out of memory 比如申請了乙個integer,但給它存了long才能存下的數,那就是記憶體溢位。記憶體洩露 memory leak 是指程式在申請記憶體後,無法釋放已申請的記憶體空間,一次記...

記憶體洩露和記憶體溢位

一 記憶體洩露 1.定義 指由於疏忽或錯誤造成程式未能釋放已經不再使用的記憶體的情況。記憶體洩漏並非指內存在物理上的消失,而是應用程式分配某段記憶體後,由於設計錯誤,失去了對該段記憶體的控制,因而造成了記憶體的浪費。2.洩露型別 1 堆記憶體洩漏 heap leak a.指利用malloc或new進...