記憶體洩露一般分為幾種情況

2021-06-24 11:28:53 字數 650 閱讀 3794

1樓:召走刀文

1. 常發性記憶體洩漏。發生記憶體洩漏的**會被多次執行到,每次被執行的時候都會導致一塊記憶體洩漏。

2. 偶發性記憶體洩漏。發生記憶體洩漏的**只有在某些特定環境或操作過程下才會發生。常發性和偶發性是相對的。

對於特定的環境,偶發性的也許就變成了常發性的。所以測試環境和測試方法對檢測記憶體洩漏至關重要。

3. 一次性記憶體洩漏。發生記憶體洩漏的**只會被執行一次,或者由於演算法上的缺陷,導致總會有一塊且僅一塊記憶體發生洩漏。比如,在乙個singleton類的建構函式中分配記憶體,在析構函式中卻沒有釋放該記憶體。

而singleton類只存在乙個例項,所以記憶體洩漏只會發生一次。

4. 隱式記憶體洩漏。程式在執行過程中不停的分配記憶體,但是直到結束的時候才釋放記憶體。嚴格的說這裡並沒有發生記憶體洩漏,因為最終程式釋放了所有申請的記憶體。

但是對於乙個伺服器程式,需要執行幾天,幾週甚至幾個月,不及時釋放記憶體也可能導致最終耗盡系統的所有記憶體。所以,我們稱這類記憶體洩漏為隱式記憶體洩漏。

2樓:

記憶體洩漏指由於疏忽或錯誤造成程式未能釋放已經不再使用的記憶體的情況。記憶體洩漏並非指內存在物理上的消失,而是應用程式分配某段記憶體後,由於設計錯誤,失去了對該段記憶體的控制,因而造成了記憶體的浪費。

所以會造成資料丟失。

記憶體洩露一般有哪些原因

嚴格意義上的記憶體洩露的原因只有一種 沒有釋放向系統申請的記憶體,因為不申請記憶體,就談不上什麼洩露,搞清楚記憶體洩露的原因,應當從組合語言的角度考慮問題。當然沒有釋放記憶體的原因是多種的 有可能是你自己 寫的不好,忘記了釋放自己 裡申請的記憶體,也有可能是你使用了乙個寫的不好的庫,庫本身有問題,這...

文章一般可以分為那幾種,文章分幾種型別?

文章結構的基本形式 1.縱式,即文章層次主要以縱向形式。以時間版為序 以作者權情感發展脈絡為序 以逐層深入的論證為序 2.橫式,即文章層次主要以橫向形式。以空間為序 以材料性質的分類劃分層次 3 合式,即縱橫式,指文章層次以縱向和橫向相結合的形式 文章分幾種型別?文章一般分記敘文 說明文 議 這三種...

文章一般分為幾類,文章的型別有哪幾種?

一 詩歌 我國最早出現的一種文學體裁,源於原始人的勞動呼聲,是一種有聲韻 有歌詠的文學。古詩多四言,如 詩經 東漢魏晉以後多五言 七言。唐代有古體和近體之分,五四 有了新詩。我國古代將合樂的詩歌稱為歌,將不合樂的詩歌稱為詩。無論合樂與否,都具有很強的 美。詩歌按時代分為古體詩 近體詩和新詩 按表達方...