[問題] 讀取幾十張大圖片造成記憶體暴增

看板MacDev作者 (bbonline229)時間7年前 (2018/06/14 02:48), 7年前編輯推噓6(606)
留言12則, 7人參與, 7年前最新討論串1/1
各位前輩好, 小弟最近在練習寫個 app 上架 遇到一個很大的問題 此app 會需要一次讀出 Bundle 裡大約十張圖片 然後在 Collection View顯示 圖片都已經在壓縮網站壓縮過了, 目前一張都大概2、300Kb 反覆讀幾次結果造成記憶體暴增, 超過1G https://i.imgur.com/MJnVKIm.png
還幾次app 直接Crash 掉 QQ 對記憶體目前沒太大研究 這情形是不是要用 cache 之類的 還是要怎樣才能改善記憶體暴增的問題 圖片已經壓縮到最小了 一次讀出 Bundle 的圖檔程式碼如下 https://i.imgur.com/PsH6Isa.png
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.70.39.237 ※ 文章網址: https://www.ptt.cc/bbs/MacDev/M.1528915723.A.87F.html ※ 編輯: bbonline229 (61.70.39.237), 06/14/2018 02:50:06 ※ 編輯: bbonline229 (61.70.39.237), 06/14/2018 03:00:05 ※ 編輯: bbonline229 (61.70.39.237), 06/14/2018 03:03:03

06/14 08:09, 7年前 , 1F

06/14 08:10, 7年前 , 2F
educe-image-size-before-upload 試試這個嗎 不知道畫質就是
06/14 08:10, 2F

06/14 09:54, 7年前 , 3F
記憶體沒放掉而已
06/14 09:54, 3F

06/14 12:23, 7年前 , 4F
return 那段用autoreleasepool closure 包起來回傳
06/14 12:23, 4F

06/14 12:25, 7年前 , 5F
或是用ImageIO 自己處理CGImage再轉回data
06/14 12:25, 5F

06/14 13:36, 7年前 , 6F
用UIImageJPEGRepresentation壓看看
06/14 13:36, 6F

06/14 13:39, 7年前 , 7F
會反覆讀的話就要用Cache呀...不然每次init又沒release
06/14 13:39, 7F

06/14 13:39, 7年前 , 8F
一定會爆掉的
06/14 13:39, 8F

06/15 15:35, 7年前 , 9F
感謝前輩建議
06/15 15:35, 9F

06/18 21:50, 7年前 , 10F
請看WWDC 2018 session 416
06/18 21:50, 10F

06/18 22:15, 7年前 , 11F

06/19 03:46, 7年前 , 12F
謝謝, 處理圖片真複雜, 有空花時間研究下
06/19 03:46, 12F
文章代碼(AID): #1R8MSBX_ (MacDev)
文章代碼(AID): #1R8MSBX_ (MacDev)