靜態(tài)/動態(tài)內存分析

硬盤 -->內存-->CPU
內存泄漏:內存空間使用完畢之后未回收

一、靜態(tài)內存分析

  • 靜態(tài)內存分析:
    • 不運行程序,直接對代碼進行分析
    • 沒有真正分配內存,根據(jù)代碼的上下文的語法結構,來分析是否有內存泄漏
  • 缺點:不一定準確,但是如果發(fā)現(xiàn)有提示,那么去結合上下文看一下,代碼是否有問題
  • 快捷鍵:command +shift +b
  • 操作方式:Product -- > Analyze
靜態(tài)內存分析.png

二、動態(tài)內存分析

  • 動態(tài)內存分析:
    • 真正運行起來程序,查看在程序運行過程中,是否會出現(xiàn)內存泄露的問題
  • 優(yōu)點:準確,如果發(fā)現(xiàn)某些地方提示內存泄露,可以根據(jù)提示找到對應的內存泄露位置
  • 操作方式:Product --> Profile -->Leaks
動態(tài)內存分析.png

*內存使用注意

  • 加載小圖片\使用頻率比較高的圖片

    • 利用imageNamed:方法加載過的圖片, 永遠有緩存, 這個緩存是由系統(tǒng)管理的, 無法通過代碼銷毀緩存
  • 加載大圖片\使用頻率比較低的圖片(一次性的圖片, 比如版本新特性的圖片)

    • 利用 initWithContentsOfFile:\imageWithContentsOfFile:\imageWithData:
      等方法加載過的圖片, 沒有緩存, 只要用完了, 就會自動銷毀
    • 基本上, 除imageNamed:方法以外, 其他加載圖片的方式, 都沒有緩存
  • 小圖片\使用頻率比較高的圖片

    • 放在Images.xcassets里面
  • 大圖片\使用頻率比較低的圖片(一次性的圖片, 比如版本新特性的圖片)

    • 不要放在Images.xcassets里面
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,034評論 25 709
  • 內存管理 簡述OC中內存管理機制。與retain配對使用的方法是dealloc還是release,為什么?需要與a...
    丶逐漸閱讀 2,081評論 1 16
  • 性能優(yōu)化 1.如何讓你的應用程序更加省電? 答:(1)如果程序用到定位,需要在定位完畢之后關閉定位,或者降低定位的...
    丶逐漸閱讀 1,028評論 0 6
  • 作為單身狗,試問最怕的是什么?過節(jié)!情人節(jié)、元宵節(jié)、七夕情人節(jié)、春節(jié)...... 都說在外覓食的孩紙每逢佳節(jié)倍思親...
    蜜禪閱讀 388評論 0 1
  • 基本命令tar -tf 文件 查看歸檔文件的內容tar -rf xxx 追加文件到tar中xarg...
    lufaqiang閱讀 522評論 0 0

友情鏈接更多精彩內容