央視網|中國網絡電視臺|網站地圖
客服設為首頁
登錄

中國網絡電視臺 > 新聞臺 > 新聞中心 >

iPhone/iOS多任務工作管理機制揭秘

發佈時間:2012年05月24日 10:53 | 進入復興論壇 | 來源:IT168 | 手機看視頻


評分
意見反饋 意見反饋 頂 踩 收藏 收藏
channelId 1 1 1
壟!-- /8962/web_cntv/dicengye_huazhonghua01 -->

更多 今日話題

壟!-- /8962/web_cntv/dicengye_huazhonghua02 -->

更多 24小時排行榜

壟!-- /8962/web_cntv/dicengye_huazhonghua03 -->

  iOS系統在iOS4開始加入了多任務後臺功能,連按兩下Home鍵呼出後臺,然後就可以在之前打開的程序中切換,但是圍繞這一設計的爭議始終陰魂不散。現在我們再通過一片開發者的文章來詳細了解一下iOS多任務工作原理。

九成的程序不會在後臺運行

  事實上你根本就不需要管理 iOS 的多任務後臺,因為你所看到留在後臺當中的程序並非真正的在運行,其實多任務後臺並不是實質上的任務管理器,更確切的説,更像是類似瀏覽器歷史記錄的東西,只不過專門針對程序的記錄而已。

  總體來講多任務後臺只是一個讓用戶可以在最近打開的程序中做切換的一個工具而已,對以上理論最好的證明就是當你重啟你的iPhone後,在多任務後台中還是會顯示所有你最近開啟過的程序,顯然他們不可能在運行。所以當你按Home鍵離開程序後,你根本不需要再去管多任務後臺的東西,因為有90%的程序都會在你按Home鍵離開程序後停止運作,已經停止運作的程序又要如何消耗更多的電量以及系統資源呢?

  Speirs 描述了iOS是如何在後臺處理程序的:

  程序在關閉後只有5秒的處理時間

  技術上來講,所有的程續在按Home鍵後只有5秒鐘的後臺時間,iOS在將這些程序變為暫停狀態前給予它們一個非常有限的時間來清除所需清除的內容,之後程序變會被保留在記憶體中以便可以快速的開啟它。

  特殊需求的程序可以達到10分鐘

  另外,當程序有特殊需求在後臺運行更久而並非5秒鐘時,Speirs 使用了 Instacast 做為例子對其進行了講解,當 Instacast 正在後台下載 podcasts 時它會告訴iOS系統它正在下載東西,這樣使得iOS系統給於其多10分鐘的時間而並非5秒鐘的時間,一但10分鐘時限到達後 Instacast 將會被強制切換至暫停模式。

  當然還有相當一部分的程序是長期在後臺工作的,如郵件、音樂、GPS、Voip、電子報等。這些程序都會一直在後臺運行直至它完成它本身的任務。

  郵件是最耗電、最佔資源的程序

  就個人經驗之談,郵件程序是整個iOS系統中消耗最多電量以及系統資源的程序,因為郵件程序會一直在後臺不停的發送接收請求,而每個請求都會消耗電量以及CPU使用量。不幸的是唯一能防止郵件件程序這樣做的方法就是不使用時關閉所有的程序,或是更改發送請求的頻率。不過相係更改了頻率後郵件程序將會失去它真正的意義,因為大部分用戶都想在收到信件後馬上獲得通知。

  上面講的都是 iOS 內置的程序,現在我們以第三方程序skype為例,早期的skype程序就跟mail程序一樣會一直耗費系統資源跟電量,不過經過多次的更新後現在已經可以很好的智慧控制自己的運行狀態了。

  若你看完這篇文章還在手動管理多任務後臺,很明顯,你是在浪費你的時間!若蘋果商店的"天才"們告訴你們需要手動關閉,麻煩請糾正他們!

熱詞:

  • 任務管理器
  • iPhone
  • 強制切換
  • 工作原理
  • 電量
  • 後臺運行
  • Instacast
  • 系統資源
  • Speirs
  • 記憶體