EventBus 發布 訂閱事件匯流排

2022-09-14 20:12:23 字數 1281 閱讀 1140

eventbus是一款針對android優化的發布/訂閱事件匯流排。

執行緒之間傳遞訊息

1.開銷小,幾行**就可以實現。

2.傳送者和接收者解耦。

**示例

1.先自定義乙個訊息傳輸類

public

class

msgtype

}

2.使用時進行註冊

eventbus.register(this);

3.傳送需要傳輸的訊息,借助自定義的傳輸類

eventbus.post(new msgtype event);

4.在你需要接收資訊的地方定義方法進行接收(方法體內就是傳輸類)

public

void onevent(msgtype event) {}

5.解除註冊

eventbus.unregister(this);

使用前先進行註冊

public

commandlinerunner

}訊息傳送

將封裝好的資料進行傳遞

eventbus.publish(builder);
@override

public

object handler(decodermetadata metadata)

return

null

; }

eventbus工具類

public

class

eventbus

/*** 廣播資料域

* @param

topicbuilder

*/public

static

void

publish(topicbuilder topicbuilder)

}

根據傳入物件進行監聽

關鍵

@subscribe 資料共享
/**

* 處理路由

* @param

metadata

*/@subscribe

@allowconcurrentevents

public

void

handleroute(topicmetadata metadata)

這樣就可以監聽傳送來的訊息,如果是相同的物件,則進行接收

關鍵就是兩邊的引數要對上,這樣才能接收到訊息。

事件發布 訂閱輕量級框架EVENTBUS

介紹摘自百科 eventbus是由greenrobot 組織貢獻 該組織還貢獻了greendao 乙個android事件發布 訂閱輕量級框架,功能 通過解耦發布者和訂閱者簡化android事件傳遞 eventbus可以代替 android傳統的intent,handler,broadcast或介面函...

JavaScript事件發布 訂閱

1 發布 訂閱模式也是諸多設計模式當中的一種 2 這種方式可以在es5下相當優雅地處理非同步操作 3 什麼是發布 訂閱呢?我們舉個栗子 假設fn1,fn2,fn3都可以視作乙個事件的發布者,執行它,就會發布乙個事件。這個時候,我們可以通過乙個事件的訂閱者去批量訂閱並處理這些事件,包括它們的先後順序。...

訂閱發布模式 事件

實現訂閱發布模式的基本思路 訂閱者把自己想訂閱的事件註冊到排程中心,所以第一步應該先實現訂閱者到排程中心的方法。訂閱方法 排程中心統一排程訂閱者註冊到排程中心的處理 發布方法 訂閱者取消訂閱事件 取消訂閱方法 直接附上 var pubsub one function evt,fn,ctx off f...