大家好像對分析源碼厭倦了,說實在我也會厭倦,不過不看是無法分析其后面的東西,從易到難是一個必要的過程。

今天說下EventBus,前幾天園里的大神已經(jīng)把其解刨,我今天就借著大神的肩膀,分析下在eShop項目中EventBus的實現(xiàn)。

最近發(fā)覺轉(zhuǎn)發(fā)文章不寫出處的,特此加上鏈接:http://inday.cnblogs.com

解析源碼

我們知道使用EventBus是為了解除Publisher和Subscriber之間的依賴性,這樣我們的Publisher就不需要知道有多少Subscribers,只需要通過EventBus進(jìn)行注冊管理就好了,在eShop項目中,有一個這樣的接口IEventBus(eShopOnContainers\src\BuildingBlocks\EventBus\EventBus\Abstractions)

電腦培訓(xùn),計算機(jī)培訓(xùn),平面設(shè)計培訓(xùn),網(wǎng)頁設(shè)計培訓(xùn),美工培訓(xùn),Web培訓(xùn),Web前端開發(fā)培訓(xùn)

public interface IEventBus
{    void Subscribe<T, TH>(Func<TH> handler)        where T : IntegrationEvent        where TH : IIntegrationEventHandler<T>;    void Unsubscribe<T, TH>()        where TH : IIntegrationEventHandler<T>        where T : IntegrationEvent;    void Publish(IntegrationEvent @event);
}

網(wǎng)友評論