單片機C語言幾種內(nèi)存泄露總結(jié)
日常項目中碰到的內(nèi)存泄露無非有以下幾種:
(1) 堆內(nèi)存泄漏(Heap leak)。堆內(nèi)存指的是程序運行中根據(jù)需要分配通過malloc,realloc new等從堆中分配的一塊內(nèi)存,再是完成后必須通過調(diào)用對應(yīng)的 free或者delete 刪掉。如果程序的設(shè)計的錯誤導(dǎo)致這部分內(nèi)存沒有被釋放,那么此后這塊內(nèi)存將不會被使用,就會產(chǎn)生Heap Leak. 這是最常見的內(nèi)存泄露。
(2)系統(tǒng)資源泄露(Resource Leak).主要指程序使用系統(tǒng)分配的資源比如 Bitmap,handle ,SOCKET等沒有使用相應(yīng)的函數(shù)釋放掉,導(dǎo)致系統(tǒng)資源的浪費,嚴重可導(dǎo)致系統(tǒng)效能降低,系統(tǒng)運行不穩(wěn)定
如果您創(chuàng)建一個可接合的POSIX線程,但是忘記聯(lián)接它,其資源或私有內(nèi)存一直保存在進程空間中,從未進行回收再利用。一定要聯(lián)接可接合的線程;否則,可能會引起嚴重的內(nèi)存泄漏問題。

編輯:admin 最后修改時間:2018-05-18