EventBus原始碼分析

2021-09-28 23:23:55 字數 518 閱讀 4424

前言:eventbus在現如今android專案中用來進行通訊使用很廣泛。在本篇文章中,我將會分為下面幾個模組來講解eventbus:如何使用,原始碼分析,使用注意事項,高階技能。

除了上面說的幾個exception,如果我們重複呼叫register的話,會出現throw new eventbu***ception("subscriber " + subscriber.getclass() + " already registered to event "+ eventtype);異常,但是如果重複unregister倒是不影響,會有log提示subscriber to unregister was not registered before ***.

學習原始碼有助於我們更好的使用這個工具,並且從中學到很多好的思想,但是原始碼的學習首先要將脈絡理清楚,避免深入細節不可自拔,文中有些細節讀者可以自行深入研究,相信你會有很不錯的收穫的。

EventBus分析原始碼

public static eventbus getdefault return defaultinstance 這裡是註冊訂閱者的地方,同樣的註冊方式有這麼 它們之間最主要的區別就是引數的不同。在實現上它們都是呼叫void register object subscriber,boolean st...

EventBus 簡單原始碼 原理分析

1.初始化 eventbus.getdefatult 單例模式初始化。public static eventbus getdefault return instance 傳入乙個預設builder 進行初始化 public eventbus eventbus eventbusbuilder buil...

EventBus2 2原始碼分析

由於我們專案使用了eventbus2,所以檢視一下原始碼,了解一下原理 關鍵的event快取資料結構 訂閱方法,按event型別歸類 private final map,copyonwritearraylist subscriptionsbyeventtype 快取已經註冊的物件,可防止物件重複註冊...