高效的利用執行緒,在後台取消一些執行緒的操作
最高效的解決辦法是通過開闢子執行緒來進行耗時操作(如:網路請求,資料庫操作或者複雜的計算等),通過asynctask或通過intentservice來建立後台操作。
如果選擇使用intentservice,它會在需要的時候通過乙個工作執行緒(intent)來請求啟動。
同時,使用intentservice會有以下幾點限制:
*這個類不能向ui傳遞資料,如果要展示執行結果則需要通過activity
* 每次只能處理乙個請求
* 每個請求的處理過程都不能中斷
2.保持響應防止發生anr
通過子執行緒處理耗時操作能夠避免使用者操作時程式發生anr(無響應).需要繼承asynctask並且實現其中的doinbackground()方法。
也可以通過建立乙個thread類或者handlethread類來進行執行緒操作,但這樣也會導致程式響應速度變慢,因為預設的執行緒優先順序與主線程的優先順序是一樣的,除非自己設定執行緒優先順序.
當查詢做操在後台進行時,資料的展示也不是即時的,但是可以通過cursorloader物件來加快後台處理速度,而且不會影響使用者與activity之間的互動.
Android效能優化
android效能優化 1.http用gzip壓縮,設定連線超時時間和響應超時時間 http請求按照業務需求,分為是否可以快取和不可快取,那麼在無網路的環境中,仍然通過快取的httpresponse瀏覽部分資料,實現離線閱讀。2.listview 效能優化 1 復用convertview 在geti...
Android效能優化
1.節制地使用service 如果應用程式當中需要使用service來執行後台任務的話,請一定要注意只有當任務正在執行的時候才應該讓service執行起來。另外,當任務執行完之後去停止service的時候,要小心service停止失敗導致記憶體洩露的情況 2.當介面不可見時釋放記憶體 當使用者開啟另...
Android效能優化
本篇主要是對 google推出的效能優化典範 進行乙個通篇的整理 主要在於一些具體的優化技巧 至於60fps 掉幀 gc 記憶體抖動 閾值 等等這些效能術語的概念裡面不做多概括,請自行查閱 本篇從以下幾點延伸擴充套件 systrace systrace 在android ddms 裡自帶,可以用來跟...