作者jonjes (HONOKA)
看板MacDev
標題[請益] 網路載圖,memory一直上升
時間Tue Aug 22 19:47:54 2017
最近在練習串接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://webptt.com/m.aspx?n=bbs/MacDev/M.1503402476.A.95C.html
1F:→ kkk003: 可以嘗試用不同作法達到相同結果來比較看看 08/22 21:37
2F:→ kkk003: 例如先轉成image後存到陣列再做顯示之類的 08/22 21:37
3F:推 tentenlee: 下載完存成檔案 08/22 22:44
4F:→ yuanruo: memory飆升就 圖太大了... 08/23 04:05
5F:推 darktt: 你的圖全部都存在記憶體中,當然記憶體消耗量高啊 08/23 08:24
6F:→ darktt: 建議先下載成檔案之後才顯示 08/23 08:25
7F:推 vampirewalk: 如darktt所述,通常要做memory, disk雙cache 08/23 09:18
8F:推 tkdmaf: 之前弄一個官方平台景點資料,他的原始圖有的就24MB…… 08/23 11:33
9F:→ tkdmaf: 這種情況就既耗流量又耗記憶體了…… 08/23 11:34
10F:→ tkdmaf: 結果我只好先用其他的方式載圖到server上再全體壓縮 08/23 11:35
11F:→ tkdmaf: 24MB硬是降成24KB 08/23 11:35
12F:推 mraaa: 是不能用第三方Library嗎?很多第三方Library都幫你處理好 08/29 07:44
13F:→ mraaa: 了。 08/29 07:44