Android 主線程 (UI線程)和子線程的用法
2023-04-12
1.在android中,我們常和兩種線程交互,分別為UI線程(又叫主線程),還有一種是子線程(Thread,Runnable)
2.主線程:UI線程
2.1從名字看下,UI線程,顧名思義就是和UI交互的線程。UI線程一般處理低耗時的UI操作(5秒以內的耗時),
常見的有:UI的更新,Toast的彈起。popwin以及dialog的,以及view的操作。
子線程:目前比較常見的就是網絡的請求,必須在子線程操作。還有其他的耗時操作
3.如何判斷當前線程執(zhí)行在主線程還是子線程:
booean isMainThread=Looper.myLooper()==Looper.getMainLooper();
如果當前是子線程,必須執(zhí)行主線程的操作??梢酝ㄟ^
Looper.prepare();
主線程操作
Toast.make(context,"",int).show();
Looper.loop();
還有在子線程通過handler來操作主線程的更新。
子線程執(zhí)行主線程也可以通過
HandlerThread thred=new HandlerThread("threadName");
thread.start();
Handler handler=new Handler(hread.loop()){
handderMsg(Message msg){
}
};
hander.sendgEmptyMessage(int what);
本文僅代表作者觀點,版權歸原創(chuàng)者所有,如需轉載請在文中注明來源及作者名字。
免責聲明:本文系轉載編輯文章,僅作分享之用。如分享內容、圖片侵犯到您的版權或非授權發(fā)布,請及時與我們聯(lián)系進行審核處理或刪除,您可以發(fā)送材料至郵箱:service@tojoy.com





