開發應用時避免記憶體洩漏的注意事項

2021-06-16 21:32:31 字數 285 閱讀 2139

1、   資料庫的cursor沒有關閉

2、 構造adapter沒有使用快取contentview

衍生的listview優化問題:減少建立view的物件,充分使用contentview,可以使用靜態類來處理優化getview的過程

3、bitmap物件不使用時採用recycle()釋放記憶體

4、activity中的物件生命週期大於activity

不要保留對context-activity長時間的引用(對activity的引用的時候,必須確保擁有和activity一樣的生命週期)

避免Java記憶體洩漏的方法

1 靜態集合類像hashmap vector等的使用最容易出現記憶體洩露,這些靜態變數的生命週期和應用程式一致,所有的物件object也不能被釋放,因為他們也將一直被vector等應用著。2 大量臨時變數的使用,沒有及時將物件設定為null也可能導致記憶體的洩露 3 資料庫的連線沒有關閉情況,包括連...

c c 中記憶體洩漏的檢查與避免

valgrind支援的工具 memcheck addrcheck cachegrind massid helgrind callgrind 執行時必須指明想用的工具,如果省略工具名,預設執行memcheck 檢測原理 1,當要讀寫記憶體中的某個位元組時,首先檢查這個位元組對應的a bit。如果該a ...

ThreadLocal記憶體洩漏需要注意的

前段時間在網上看到了一篇關於threadlocal記憶體洩漏的文章 於是個人也研究了下threadlocal 物件,其原理是 threadlocal 定義的變數值 會儲存在當前執行緒的乙個map集合中 這個map裡面儲存的是entity物件 entity物件的key是當前threadlocal物件的...