系統總結Android OOM 產生原因及解決方案

名詞解釋

OOM Out Of Memory 內存溢出

理解

如果不好理解,可以想象一下水溢出,向一個杯子裏面持續加入水,當水杯空間不夠用的時候,水就會溢出

同理,android系統分配給app的運行內存就是一個水杯,當app開銷內存超過分配當內存時,就會產生內存溢出

產生當幾種原因

  1. 內存一次性開銷過大
  2. 內存持續性開銷
  3. 內存回收不及時
  4. 內存無法回收

每種原因對應的實例

內存一次性開銷過大:加載巨圖等

持續性開銷:listview加載圖片滾動,循環創建對象等

內存回收不及時:內存開銷過快,GC頻率跟不上開銷速度等

內存無法回收:內存泄露導致內存溢出等

以上爲總結的內存溢出的一些現象對應的根本原因,歡迎補充,我會持續豐富到文章當中。

微信掃描二維碼,關注我的公衆號
歡迎關注這個不是技術號的公衆號,我們聊聊別的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章