看板 MacDev 關於我們 聯絡資訊
最近在練習串接api 大概做成tableView顯示固定數量,下拉後會追加cell數 但發現每次下載,memory就會往上升,明明才200初筆資料 Memory卻會到600多(單純的圖片跟文字而已) 以下是目前的寫的方法(抱歉,電腦不在身邊,只能憑記憶了) let url = URL(string:"xxxx") let data = try? Data(URL:url) Dispatch queue.main.async{ myImageVIew.image = UIImage(data:data) } 外面還包了一層if 來做判斷 看cache裡有沒有圖片,沒有才下載 雖然知道有第三方可以輕鬆解決,但想先嘗試用原生的來做 不知道前輩們有沒有遇過這種問題?是如何解決的? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 115.43.186.170 ※ 文章網址: https://www.ptt.cc/bbs/MacDev/M.1503402476.A.95C.html
kkk003: 可以嘗試用不同作法達到相同結果來比較看看 08/22 21:37
kkk003: 例如先轉成image後存到陣列再做顯示之類的 08/22 21:37
tentenlee: 下載完存成檔案 08/22 22:44
yuanruo: memory飆升就 圖太大了... 08/23 04:05
darktt: 你的圖全部都存在記憶體中,當然記憶體消耗量高啊 08/23 08:24
darktt: 建議先下載成檔案之後才顯示 08/23 08:25
vampirewalk: 如darktt所述,通常要做memory, disk雙cache 08/23 09:18
tkdmaf: 之前弄一個官方平台景點資料,他的原始圖有的就24MB…… 08/23 11:33
tkdmaf: 這種情況就既耗流量又耗記憶體了…… 08/23 11:34
tkdmaf: 結果我只好先用其他的方式載圖到server上再全體壓縮 08/23 11:35
tkdmaf: 24MB硬是降成24KB 08/23 11:35
mraaa: 是不能用第三方Library嗎?很多第三方Library都幫你處理好 08/29 07:44
mraaa: 了。 08/29 07:44