本篇文章給大家分享的是有關(guān)深入淺析Android中的消息機(jī)制,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。
成都創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比淶源網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式淶源網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋淶源地區(qū)。費(fèi)用合理售后完善,10余年實(shí)體公司更值得信賴。一、簡(jiǎn)介
Android的消息機(jī)制主要是指Handler的運(yùn)行機(jī)制,那么什么是Handler的運(yùn)行機(jī)制那?通俗的來(lái)講就是,使用Handler將子線程的Message放入主線程的Messagequeue中,在主線程使用。
二、學(xué)習(xí)內(nèi)容
學(xué)習(xí)Android的消息機(jī)制,我們需要先了解如下內(nèi)容。
平常我們接觸的大多是Handler和Message,今天就讓我們來(lái)深入的了解一下他們。
三、代碼詳解
一般而言我們都是這樣使用Handler的
xxHandler.sendEmptyMessage(xxx);
當(dāng)然還有其他表示方法,但我們深入到源代碼中,會(huì)發(fā)現(xiàn),他們最終都調(diào)用了一個(gè)方法
public boolean sendMessageAtTime(Message msg, long uptimeMillis) { MessageQueue queue = mQueue; if (queue == null) { RuntimeException e = new RuntimeException( this + " sendMessageAtTime() called with no mQueue"); Log.w("Looper", e.getMessage(), e); return false; } return enqueueMessage(queue, msg, uptimeMillis); }