android 中的多執行緒使用邏輯

2021-06-20 19:25:40 字數 478 閱讀 5024

android 使用主線程模型,為了使使用者體驗良好,耗時操作需要使用多執行緒來完成。

那麼使用多執行緒的一般邏輯是什麼呢?

在耗時的3個大戶是。

1. 本地io操作。包括讀寫資料庫,讀寫xml等本地檔案。

2. 網路io操作。

3. ui 框架的 measure - layout - draw 流程。

其中3 是主線程中要做的事,這裡不涉及多執行緒,不考慮。

其中1是可控的耗時操作。本地的io操作,雖然是耗時操作,但是耗時基本是在某個範圍內,是程式設計師可控的。

其中2是不可控的耗時操作。網路的io操作,外界環境等不穩定因素很多,是程式設計師不可控的。

對於1,一般的多執行緒操作是用乙個守護執行緒來搞定。如:timer, handlerthread等。

對於2,因為不可控,如果其中乙個耗時任務出現問題,耗時太久,用乙個守護執行緒來做,資料更新不及時,使用者體驗會不太好。

這種情況一般用執行緒池來處理。

Android 多執行緒

1 簡介 2 android 平台下的多執行緒 package com.powerise.thread import android.os.bundle import android.view.view import android.view.view.onclicklistener import ...

Android 多執行緒

1,常用的thread 和running的方法 public static void thread thread.start private static void running thread thread new thread runnable thread.start private stat...

Android 多執行緒

最近開始做安卓專案,然而對多執行緒的理解和應用還是欠缺,最近就系統的學習一下 public class testthreadactivity extends baseactivity private void initviews private class mytask extends asynct...