既然說到“偽後臺”那必然也會有“真後臺”,真後臺其意就是當你開啟一個程式的時候,除非手動關閉或者關機強制停止外,會一直在後臺執行,而且任何應用都可以同時進行,互不干擾,鎖屏也會執行,例如同時下載,GPS定位,訊息通知等等,這樣的後臺機制便是”真後臺“。 而iOS平臺雖然支援後臺管理,但是並不是所有的應用程式,也就支援音樂,下載APP,訊息推送以及通知會後臺執行。例如當你點選home鍵切換到桌面的時候,你之前執行的程式大多數都會斷掉,如果再切換回來,就會出現重新載入的畫面,當然,如果你切換回來的時間並不長的話是不會重新載入的。 如果是影片或者遊戲,當你切換出去的時候它們會自動暫停在那裡,不會進行緩衝等後臺執行。這也是眾多使用者稱其為”偽後臺“的原因。 總結來說iOS透過智慧識別來判斷哪些後臺程式是你經常使用且有用的進行保留,哪些是沒用的進行關閉,透過記憶體回收機制,保證記憶體最大功效的利用,繼而帶來系統的流暢感。這也是iOS稱之為iOS的原因,如果想要真後臺執行只能透過越獄才能實現。 簡單的對比”偽後臺“與”真後臺“優劣: 偽後臺的優勢:記憶體利用率非常高,系統執行流暢,高效率的記憶體使用以及很多應用退到後臺斷開網路連線等原因帶來的是耗電量的大幅度降低,手機的發熱量減少。 真後臺的優勢:當系統在執行一個應用程式時,可以同時在後臺處理多個任務,讓你在玩遊戲,看書的同時,還可以快取電影,緩衝網頁,更新軟體,地圖導航等等眾多工同時進行,給使用者帶來極大的方便。 偽後臺的劣勢:只用你當前在使用的程式是真正執行的,而隱藏在後臺的大多數程式都處於靜止狀態,無法同時執行,這也就是很多朋友稱為“墓碑式”後臺,這樣的後臺執行模式在平常生活中可能感覺不到什麼,但是可能會在你某些需要的時候帶來不便。 真後臺的劣勢:記憶體佔有率極高,後臺執行的程式還會繼續聯網工作,處理器不得不一直進行極快的運算處理,從而帶來卡頓,手機電量消耗高,手機發熱等後果。 另外!“偽後臺”與“單任務”不是一個概念!“偽後臺”與“單任務”不是一個概念!“偽後臺”與“單任務”不是一個概念!重要的話要說三遍!簡單來說,“單任務”指的是隻能單獨執行一個任務,“偽後臺”是可以執行多個任務的,只不過有很多限制許可權。 安卓的軟體要想真後臺執行,開發者在程式設計的時候,編寫一些程式碼,申請成為“服務”,才可能真後臺執行,也就是要應用程式配合。 Window則不是這樣,所有程式不需特殊處理,全部都是自動支援真後臺。 之所以說安卓開放,是因為安卓對哪些程式可以真後臺執行並不加限制。只要軟體開發者自己認為有必要,就可以讓自己寫的程式成為真後臺執行的程式。 蘋果則對此有嚴格限制,只有少數型別的應用可以真後臺執行,例如音樂播放、GPS導航、軟體下載、電話、簡訊、網路語音(例如Skype)等,一共就只有7種。 理論上安卓允許所有型別的程式真後臺執行,那所有的安卓都是真後臺程式嗎?這就好比:一條馬路允許開到時速100公里,上面跑所有車就非得開100公里時速嗎? 當然不是,得看有沒有必要,並不是說安卓是開放的,允許你寫後臺執行的程式,你寫程式就非得寫成後臺執行的。 不管是安卓也好,IOS也罷,絕大多數軟體是沒必要真後臺的,比如遊戲軟體。 比如你在玩賽車時,要是來電,賽車遊戲就肯定會到後臺,最好的處理就是讓遊戲暫停(讓你專心打電話),而不是你一邊打電話,賽車繼續在後臺跑(儘管你看不見),馬達聲繼續轟鳴,軟體開發者還沒愚蠢到這個地步。 只有少數軟體是必須真後臺的,比如QQ,在安卓下,QQ很容易寫成真後臺程式。 對於蘋果來說,如果吧越獄,QQ是不允許後臺執行的。為彌補這個缺憾,蘋果採用推送方式,能像收簡訊一樣收到QQ訊息,這樣QQ不後臺執行也不重要了,重要的是你收到了QQ訊息,並且QQ主程式不執行還節省了記憶體和CPU佔用。 所以說安卓絕大部分應用軟體在後臺實際上也是暫停的,這種處理方式最適合於手機。安卓、IOS、WP7都是這樣設計的。 要說完全真後臺的手機作業系統(什麼軟體切到後臺都能執行),或許微軟的WM可以算的上。WM就跟它的名字一樣,簡直就是手機上執行的Windows。 安卓之所以不如相同硬體配置的IOS流暢,原因有很多,其中最重要的可能是機型眾多,為保證相容性,應用軟體只能用JAVA編寫。JAVA號稱一次編寫,到處執行,相容性很好。 但JAVA編寫的軟體,只能在對應的虛擬機器執行,然後由虛擬機器翻譯成真正的CPU的執行碼,效率受到影響。 iPhone的機型只有寥寥幾種,其程式語言是Object C,可以生成針對硬體的執行碼,可直接在CPU上執行,效率當然高得多了。 本文來自於: http://news.mydrivers.com/1/441/441342.htm http://bbs.feng.com/read-htm-tid-3732228.html
既然說到“偽後臺”那必然也會有“真後臺”,真後臺其意就是當你開啟一個程式的時候,除非手動關閉或者關機強制停止外,會一直在後臺執行,而且任何應用都可以同時進行,互不干擾,鎖屏也會執行,例如同時下載,GPS定位,訊息通知等等,這樣的後臺機制便是”真後臺“。 而iOS平臺雖然支援後臺管理,但是並不是所有的應用程式,也就支援音樂,下載APP,訊息推送以及通知會後臺執行。例如當你點選home鍵切換到桌面的時候,你之前執行的程式大多數都會斷掉,如果再切換回來,就會出現重新載入的畫面,當然,如果你切換回來的時間並不長的話是不會重新載入的。 如果是影片或者遊戲,當你切換出去的時候它們會自動暫停在那裡,不會進行緩衝等後臺執行。這也是眾多使用者稱其為”偽後臺“的原因。 總結來說iOS透過智慧識別來判斷哪些後臺程式是你經常使用且有用的進行保留,哪些是沒用的進行關閉,透過記憶體回收機制,保證記憶體最大功效的利用,繼而帶來系統的流暢感。這也是iOS稱之為iOS的原因,如果想要真後臺執行只能透過越獄才能實現。 簡單的對比”偽後臺“與”真後臺“優劣: 偽後臺的優勢:記憶體利用率非常高,系統執行流暢,高效率的記憶體使用以及很多應用退到後臺斷開網路連線等原因帶來的是耗電量的大幅度降低,手機的發熱量減少。 真後臺的優勢:當系統在執行一個應用程式時,可以同時在後臺處理多個任務,讓你在玩遊戲,看書的同時,還可以快取電影,緩衝網頁,更新軟體,地圖導航等等眾多工同時進行,給使用者帶來極大的方便。 偽後臺的劣勢:只用你當前在使用的程式是真正執行的,而隱藏在後臺的大多數程式都處於靜止狀態,無法同時執行,這也就是很多朋友稱為“墓碑式”後臺,這樣的後臺執行模式在平常生活中可能感覺不到什麼,但是可能會在你某些需要的時候帶來不便。 真後臺的劣勢:記憶體佔有率極高,後臺執行的程式還會繼續聯網工作,處理器不得不一直進行極快的運算處理,從而帶來卡頓,手機電量消耗高,手機發熱等後果。 另外!“偽後臺”與“單任務”不是一個概念!“偽後臺”與“單任務”不是一個概念!“偽後臺”與“單任務”不是一個概念!重要的話要說三遍!簡單來說,“單任務”指的是隻能單獨執行一個任務,“偽後臺”是可以執行多個任務的,只不過有很多限制許可權。 安卓的軟體要想真後臺執行,開發者在程式設計的時候,編寫一些程式碼,申請成為“服務”,才可能真後臺執行,也就是要應用程式配合。 Window則不是這樣,所有程式不需特殊處理,全部都是自動支援真後臺。 之所以說安卓開放,是因為安卓對哪些程式可以真後臺執行並不加限制。只要軟體開發者自己認為有必要,就可以讓自己寫的程式成為真後臺執行的程式。 蘋果則對此有嚴格限制,只有少數型別的應用可以真後臺執行,例如音樂播放、GPS導航、軟體下載、電話、簡訊、網路語音(例如Skype)等,一共就只有7種。 理論上安卓允許所有型別的程式真後臺執行,那所有的安卓都是真後臺程式嗎?這就好比:一條馬路允許開到時速100公里,上面跑所有車就非得開100公里時速嗎? 當然不是,得看有沒有必要,並不是說安卓是開放的,允許你寫後臺執行的程式,你寫程式就非得寫成後臺執行的。 不管是安卓也好,IOS也罷,絕大多數軟體是沒必要真後臺的,比如遊戲軟體。 比如你在玩賽車時,要是來電,賽車遊戲就肯定會到後臺,最好的處理就是讓遊戲暫停(讓你專心打電話),而不是你一邊打電話,賽車繼續在後臺跑(儘管你看不見),馬達聲繼續轟鳴,軟體開發者還沒愚蠢到這個地步。 只有少數軟體是必須真後臺的,比如QQ,在安卓下,QQ很容易寫成真後臺程式。 對於蘋果來說,如果吧越獄,QQ是不允許後臺執行的。為彌補這個缺憾,蘋果採用推送方式,能像收簡訊一樣收到QQ訊息,這樣QQ不後臺執行也不重要了,重要的是你收到了QQ訊息,並且QQ主程式不執行還節省了記憶體和CPU佔用。 所以說安卓絕大部分應用軟體在後臺實際上也是暫停的,這種處理方式最適合於手機。安卓、IOS、WP7都是這樣設計的。 要說完全真後臺的手機作業系統(什麼軟體切到後臺都能執行),或許微軟的WM可以算的上。WM就跟它的名字一樣,簡直就是手機上執行的Windows。 安卓之所以不如相同硬體配置的IOS流暢,原因有很多,其中最重要的可能是機型眾多,為保證相容性,應用軟體只能用JAVA編寫。JAVA號稱一次編寫,到處執行,相容性很好。 但JAVA編寫的軟體,只能在對應的虛擬機器執行,然後由虛擬機器翻譯成真正的CPU的執行碼,效率受到影響。 iPhone的機型只有寥寥幾種,其程式語言是Object C,可以生成針對硬體的執行碼,可直接在CPU上執行,效率當然高得多了。 本文來自於: http://news.mydrivers.com/1/441/441342.htm http://bbs.feng.com/read-htm-tid-3732228.html