※ 本文為 layzer 轉寄自 ptt.cc 更新時間: 2012-01-28 11:35:24
看板 iPhone
作者 標題 [心得] 多工列App們不需要特地去關閉
時間 Mon Jan 9 15:42:28 2012
我一直對iOS的記憶體切換法很有興趣,今天看了Speirs所寫的「Misconceptions About
iOS Multitasking」( http://goo.gl/UAYaj )之後總算有個整體的認識
圖文解釋記憶體配置表我放在blog ( http://www.lordmi.com/archives/10034 )
懶得看理論的可以跳過這段直接看歸納
所以讓我們簡單的說結論吧:
*假如有人告訴你說停留在多工列表的Apps 它們還在執行、還在用你的記憶體、還在
消耗你的電池...這些都是錯的
*當你在App中按下home button,App 會被作業系統從 Active 改成 Background,然
後很快的變成 Suspended 不再消耗資源
*從Background 變成Suspended的步驟很快,但如果前面有工作沒做完也有可能要花上
10分鐘
*假如free記憶體即將用完,iOS會自動移除Suspended 狀態的Apps清出記憶體
*有五種類型的Apps會在 background 直到做完所有事情:audio(音樂), GPS(定位
), VOIP(網路語音通信), Newsstand(新聞) and accessory (控制配件的程式)
還不夠簡單的話,用一句話說完吧。
你不需要管iOS在背景裡怎麼做
他想說的是iPhone的用法就這樣而已。
--
*本文並非由廠商提供: かんーまおーよんすっすー(よんすっすー)♪
(′ ∀ ‵ ) ________________ / 丶 ヽ U CHU BIEN CAPSULE |
/ ヽ / / _____斯斯鼻炎膠囊_____|
/ /へ ヘ / / スズレックス鼻炎カプセルA |
/ \ ヾミ / _良心製文__θ__沒摻類固醇_|lordmi \(・ω<)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.133.61.8
※ 編輯: lordmi 來自: 220.133.61.8 (01/09 15:43)
推 :that's right!Great minds think alike.1F 01/09 15:46
推 :沒錯 完全不會特別去在意XD2F 01/09 15:48
→ :有疑問,兩點好像互衝?3F 01/09 15:48
→ :如果快用完就會去釋放那些不必要的app
→ :但是那五種又會放在bg等東西跑完
→ :那如果今天只剩下那五種在跑但是記憶體快用完呢?
→ :如果快用完就會去釋放那些不必要的app
→ :但是那五種又會放在bg等東西跑完
→ :那如果今天只剩下那五種在跑但是記憶體快用完呢?
推 :給小舞,如果有這種情況那五種app還是會被關掉7F 01/09 15:51
→ :還是會有記憶體不足以及關閉該app就比較順暢的情況吧8F 01/09 15:51
→ :這似乎只能套用在JB前9F 01/09 15:52
→ :有時真的覺得關掉一些會比較順耶,應該不完全心裏因素10F 01/09 15:53
推 :在記憶體快吃滿時手動關掉一些app的確會有點變順的感覺y11F 01/09 15:53
→ :有時擱著15個左右的app沒關說沒差別有點難以置信12F 01/09 15:54
→ :不過像採香菇那種的確是一段時間之後她就自己unload
→ :不過像採香菇那種的確是一段時間之後她就自己unload
→ :不過那是因為OS不用做"先把不用的app關掉以獲得記憶體"14F 01/09 15:54
→ :等到下次載入才依照上次執行時間去計算該有多少香菇15F 01/09 15:55
推 :的確是不用特別去關,安心用就對了,真的怪怪的再去關16F 01/09 15:56
推 :Remove bg 感覺就是把suspended先移掉17F 01/09 15:57
→ :是說依照採香菇那種調調...隔很久重開要載半天18F 01/09 15:58
→ :而且還會回到title畫面重新進入,你要說只有suspended
就我的經驗以上是理想,現實中有些程式會鎖住記憶體不放→ :而且還會回到title畫面重新進入,你要說只有suspended
這時候用砍多工列App似乎會讓iOS再去整理一次,有時候會清出來有時候不會。
※ 編輯: lordmi 來自: 220.133.61.8 (01/09 16:01)
推 :Backgrounder就感覺是強制active20F 01/09 15:58
→ :老實說把她想成iPhone實質關閉,只是額外留個app捷徑21F 01/09 15:58
→ :在多工列上方便你下次開啟...好像也可以說得通
→ :所以就是理論值還有各app耍小聰明的差距這樣XD
→ :在多工列上方便你下次開啟...好像也可以說得通
→ :所以就是理論值還有各app耍小聰明的差距這樣XD
→ :還有就是3G/s確實會發生小舞說的那種5大類程式塞滿的窘境24F 01/09 16:02
→ :最近的App越來越肥,我換4s之後就相安無事了
→ :最近的App越來越肥,我換4s之後就相安無事了
推 :隔很久重開要重新進入那種很明顯是被iOS給釋放掉啦26F 01/09 16:07
→ :你在記憶體充足下他是不會被釋放掉的
→ :當然前提也是那App有支援iOS所謂的多工
→ :你在記憶體充足下他是不會被釋放掉的
→ :當然前提也是那App有支援iOS所謂的多工
→ :重點是當記憶體滿的時候要在叫回來可能就閃退了XD29F 01/09 16:10
→ :此外程式的寫法還有當初的平台也是很大的因素的確
→ :所以只能說完全不用關是理論值,實際還是有點差
→ :此外程式的寫法還有當初的平台也是很大的因素的確
→ :所以只能說完全不用關是理論值,實際還是有點差
→ :我不知道REAL RACING 2是不是屬於五大類,之前有一次手機收32F 01/09 16:12
→ :簡訊時竟會LAG,我把它關掉後就不會了
→ :簡訊時竟會LAG,我把它關掉後就不會了
推 :那就是他記憶體吃太多,系統還沒放掉34F 01/09 16:20
→ :總之一句話,放背景的程式, 除了 voip,音樂,導航,newsstand
→ :還有和30pin外接裝置溝通的程式外,在背景最多幾秒就會停
→ :官方說法看這文件 http://goo.gl/ML5Vm
→ :總之一句話,放背景的程式, 除了 voip,音樂,導航,newsstand
→ :還有和30pin外接裝置溝通的程式外,在背景最多幾秒就會停
→ :官方說法看這文件 http://goo.gl/ML5Vm
→ :其實會有這種說法並不是沒有原因...因為要教人用>又怕對方38F 01/09 16:28
→ :沒有關掉會背景作業的程式所以乾脆叫他都關掉以避免記憶體
→ :被卡卡獸吃光光....
→ :沒有關掉會背景作業的程式所以乾脆叫他都關掉以避免記憶體
→ :被卡卡獸吃光光....
推 :iOS的多工和一般使用者用的習慣不一樣 手動關也可以41F 01/09 16:36
→ :不要關iOS也控制得不錯 不管怎樣似乎都沒有很大差別
→ :不要關iOS也控制得不錯 不管怎樣似乎都沒有很大差別
推 :有遇過開太多APP 而收不了信的~ 因該還是會有差!!!!!43F 01/09 17:06
推 :我非常確定racing2 RF 12這類要消耗大量資源的程式會吃44F 01/09 17:08
→ :因為我把這幾種遊戲放在背景 真的會LAG
→ :因為我把這幾種遊戲放在背景 真的會LAG
推 :系統不會馬上回收背景app資源 所以剛從遊戲切換到別的app46F 01/09 17:23
→ :的時候 可能會暫時因為資源不足而跑不順
→ :的時候 可能會暫時因為資源不足而跑不順
→ :我的狀況非馬上切換,是我收訊息LAG時我才發現原來RR2沒關48F 01/09 17:24
→ :用了其他app一陣子後再回去剛剛的遊戲 會發現它要從頭讀取49F 01/09 17:26
→ :越大型的遊戲越容易遇到這種狀況
→ :越大型的遊戲越容易遇到這種狀況
→ :我覺得還是需要關 何況關一點都不麻煩 虛擬案件超好用51F 01/09 17:29
→ :我所描述的狀況是這種GAME似乎不屬於五大類(?),但是放在背52F 01/09 17:30
→ :景中他也是持續在運作而影響到目前使用的APP的情況
→ :當然關掉是最簡單的解決方式,只是針對這篇主題回覆我的情形
→ :景中他也是持續在運作而影響到目前使用的APP的情況
→ :當然關掉是最簡單的解決方式,只是針對這篇主題回覆我的情形
推 :那是因為記憶體不足而導致的lag55F 01/09 17:32
→ :仔細看了原po的說法 第一點不完全正確 背景app會佔記憶體
→ :但是佔記憶體不代表正在執行
→ :仔細看了原po的說法 第一點不完全正確 背景app會佔記憶體
→ :但是佔記憶體不代表正在執行
推 :我也不覺得正確,因為我的3gs升到4.0變多工後58F 01/09 17:34
→ :變得非常難用,打簡訊常常要卡半天
→ :一定得清除記憶體後才能稍微好一點
→ :變得非常難用,打簡訊常常要卡半天
→ :一定得清除記憶體後才能稍微好一點
→ :除了那五種背景工作 其他情況下都會被暫停61F 01/09 17:36
→ :是的,我手誤,我想表達的是它雖沒執行但似乎還是佔了資源62F 01/09 17:36
→ :不完全對阿63F 01/09 17:44
推 :消耗記憶體是真的吧64F 01/09 17:50
推 :可是每次去蘋果店玩iphone or ipad 每次多工列都滿滿65F 01/09 18:02
→ :有好幾十個軟體 這時iphone或ipad就變得超頓
→ :清掉之後 iphone會明顯的變得很快
→ :你的說法顯然有問題吧
→ :有好幾十個軟體 這時iphone或ipad就變得超頓
→ :清掉之後 iphone會明顯的變得很快
→ :你的說法顯然有問題吧
→ :這樣講,當前(完整)直行可能會佔掉50mb69F 01/09 18:08
→ :縮小後,會使用10去佔存狀態(記憶體充足時)
→ :當記憶體不足時,會變成使用1mb去記錄這個程式"執行過"
→ :而釋放多餘的記憶體給當前的程式使用
→ :所以少量不關都是可以的,但當你執行過100個不關,就會知道..
→ :上面的記憶體只是舉例由多到少,並不是一定
→ :原PO文中也有提到,但最後不是完全不佔,所以還是要定期關
→ :縮小後,會使用10去佔存狀態(記憶體充足時)
→ :當記憶體不足時,會變成使用1mb去記錄這個程式"執行過"
→ :而釋放多餘的記憶體給當前的程式使用
→ :所以少量不關都是可以的,但當你執行過100個不關,就會知道..
→ :上面的記憶體只是舉例由多到少,並不是一定
→ :原PO文中也有提到,但最後不是完全不佔,所以還是要定期關
推 :只是支手機,我是覺得沒必要去操這麼多心76F 01/09 18:36
→ :我自己的程式有400+,用了兩年半都沒在意過開了多少程式
→ :比起其它OS,iOS我是覺得已經做得很好了
→ :我自己的程式有400+,用了兩年半都沒在意過開了多少程式
→ :比起其它OS,iOS我是覺得已經做得很好了
→ :推樓上 我選iOS很大理由就是很多東西不用我再去多擔心79F 01/09 20:44
→ :但是不可否認的是把多工列上的圖示關閉後會比較省電80F 01/09 23:31
→ :第一點和第四點是不是有衝突???81F 01/09 23:54
→ :"你不需要管iOS在背景裡怎麼做"是user的權利 但是並不代表
→ :背景程式真的沒有佔任何一點資源吧
→ :"你不需要管iOS在背景裡怎麼做"是user的權利 但是並不代表
→ :背景程式真的沒有佔任何一點資源吧
推 :那五種例外情形...很多app都算耶...84F 01/10 01:47
--
作者 lordmi 的最新發文:
- 8F 5推
- 38F 4推
- 19F 14推
- 今天早上線上發佈會的剪輯 官方 IGN繁中 video/wen-ming-7-you-xi-jie-shao-shi-pin 最大的差異在時代會更替,每個時代有獨特的角色跟國家,可以單一個時代也可連 …70F 31推
- 15F 12推
點此顯示更多發文記錄
回列表(←)
分享