iOS訊息機制基於廣播模型

2021-07-03 01:46:53 字數 799 閱讀 3849

ios訊息機制基於廣播模型;

訊息中心(nsnotificationcenter)是基於程序的單件例項;訊息佇列(nsnotificationqueue)是基於執行緒的,每個執行緒都有乙個預設的訊息佇列,這個佇列相關聯於訊息中心,每個訊息中心或執行緒可以關聯於多個佇列。

訊息中心是採用同步方式;訊息佇列採用非同步方式;

訊息中心例項:

nsnotificationcenter*nc = [nsnotificationcenter

defaultcenter];

訂閱事件:

[nc 

addobserver:self

selector:@selector(observenotification:)name:@"observenotification"

object:nil];

發布事件:

[nc 

postnotificationname:

@"observenotification"

object:

nil];

訊息佇列例項:

nsnotificationqueue*nq = [nsnotificationqueue

defaultqueue];

發布非同步事件:

[nq 

enqueuenotification:[

nsnotificationnotificationwithname:

@"observenotification"

object:

nil]postingstyle:nspostasap];

IOS訊息分發(廣播)機制

在ios中,提供了通知機制 notification 可以在物件間傳遞和接受資訊。傳遞和接受資訊的物件間甚至不需要知道對方的存在。究其本質來說,其實是設計模式中的觀察者模式的應用。一種更好的方式,就是使用ios中的notification機制。notification由三部分組成 傳送訊息者 訊息中...

IOS 廣播機制與 android 廣播機制對比

android下廣播機制的實現機制 1.傳送 context的 sendbroadcast實現,傳入intent即可,intent提供了攜帶很多基本型別等的方法,如果想傳遞複雜物件,應該實現parcelable介面,parcelable介面提供了物件序列化的一系列方法。2.接收 接收主要有兩種方法 ...

IOS 廣播機制與 android 廣播機制對比

android下廣播機制的實現機制 1.傳送 context的 sendbroadcast實現,傳入intent即可,intent提供了攜帶很多基本型別等的方法,如果想傳遞複雜物件,應該實現parcelable介面,parcelable介面提供了物件序列化的一系列方法。2.接收 接收主要有兩種方法 ...