異步任務(wù)AsyncTask

為甚么要異步任務(wù)?

1.Android是單線程模型
2.耗時(shí)操作要放在非主線程里面執(zhí)行

構(gòu)建Asynctask子類的參數(shù)

1、asynctask<Params,Progress,Result>是一個(gè)抽象類,

通常用于被繼承,繼承AsyncTask需要指定如下三個(gè)泛型參量:

Params:啟動任務(wù)時(shí)輸入?yún)?shù)的類型。
Progress:后臺執(zhí)行任務(wù)中返回進(jìn)度值的類型。
Result:任務(wù)執(zhí)行完畢需要進(jìn)行返回的指定的泛型作為返回值。

2.重寫四個(gè)方法:

1、onPreExecute:執(zhí)行之前調(diào)用。
2、doInBackground(Params):子線程中運(yùn)行的任務(wù)放在這里,用return語句返回結(jié)果。注意:這里是不能進(jìn)行UI操作的。
3、onProgressUpdate(Progress):在后臺任務(wù)中調(diào)用publishProgress(progress)方法后,這個(gè)方法會被調(diào)用,可以對UI進(jìn)行操作。
4、onPostExecute(Result):后臺任務(wù)執(zhí)行完畢并返回值時(shí),這個(gè)方法會被調(diào)用。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容