顯示廣告
隱藏 ✕
※ 本文為 Knuckles 轉寄自 ptt.cc 更新時間: 2012-01-12 20:56:02
看板 iPhone
作者 a0683g10 (*~小瞇~*)
標題 Re: [心得] 多工列App們不需要特地去關閉
時間 Thu Jan 12 20:47:29 2012


不好意思原文吃光光

推文中有提到多工列中的程式會佔記憶體影響系統效能,清光後會變順

很多人實測後都有這種感覺,包含我也是   我個人是把這現象解釋成下面這段話

iOS在記憶體不足時需要判斷哪些程式需要被關閉以釋放記憶體

而使用者已經手動清除這些軟體使OS省去這一步驟加快程序執行

這樣解釋看起來蠻合理的,但是沒有證據可以支持這個論點

iOS沒有提供API供人監測系統負載的情況所以無從得知程式佔了多少記憶體與CPU
也許有,只是我不是開發者不清楚這方面的API
好玩的地方在於雖然沒有證據,不過iOS 5.0起Apple有log可以看 (也許我之前沒發現

設定->一般->關於本機->診斷與用量->診斷與用量資料

這裡面有一些log可以看,我們要看的是其中lowmemory開頭這一個
我也只看得懂一點,所以解釋的事情交給其他專業人士吧
從一個使用者的觀點來看這應該是在iOS遇到需要釋放記憶體空間時所寫下的

裡面也有寫到現在記憶體的配置情況,也就是中間的free pages、wired pages這邊

下面則是列出現在有哪些程式正在記憶體中與其佔用的記憶體大小

可以看到的是記憶體中有很多程式,有些明明就已經被清除了卻還是存在  但佔用很少

有些則是確確實實消失了

簡單的證明方法就是看你記錄中有哪些程式還開著,馬上用多工列叫出來看看

有些明明就有被記錄在log中,叫出來時卻要reload     不過這樣的方法有誤差就是了

其中有個令我驚訝的地方,各位有測試的人可以看看自己的mail、springboard兩個程式

有時候光這兩個程式就可以吃到快20000pages的記憶體..................


我自己用3GS實測發現只要將mail關閉後系統反應就有變順的感覺

把多工列清空但是不關閉mail卻沒有多大差別

而mail這程式則是預設自動啟動,所以用叫多工關閉的方式只是reload關不掉的

springboard這個要reload就跟重開機無異了就不討論

如果各位有興趣可以試試,假使測試結果還是沒什麼差別那可能只有對某些情況有效

只是想分享個人的一點小小心得,謝謝各位看到最後

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.43.45.40
victoryss:推!1F 01/12 20:53
a0683g10:感謝樓上2F 01/12 20:53

--
※ 看板: iOS 文章推薦值: 0 目前人氣: 0 累積人氣: 353 
r)回覆 e)編輯 d)刪除 M)收藏 ^x)轉錄 同主題: =)首篇 [)上篇 ])下篇