Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 通知是否会进入队列,直到观察者抓住它?(目标c)_Ios_Objective C - Fatal编程技术网

Ios 通知是否会进入队列,直到观察者抓住它?(目标c)

Ios 通知是否会进入队列,直到观察者抓住它?(目标c),ios,objective-c,Ios,Objective C,假设我在一个应用程序中有两个场景,第一个是菜单,第二个显示数据。数据是从web服务提取的,需要一段时间进行异步处理。为了给用户一种数据被即时提取的错觉,数据检索过程在应用加载时启动。当数据准备就绪时,将广播包含数据对象的通知 显示数据的第二个场景具有所述通知的唯一注册侦听器 如果在用户决定继续之前广播通知,通知是否会丢失或保留在稍后读取的队列中?通知仅发送给当前注册的侦听器。就这样 没有排队。如果另一个对象注册了给定的通知,则无法获取以前发送的通知。它将只接收已注册的新通知。只向当前注册的侦听器

假设我在一个应用程序中有两个场景,第一个是菜单,第二个显示数据。数据是从web服务提取的,需要一段时间进行异步处理。为了给用户一种数据被即时提取的错觉,数据检索过程在应用加载时启动。当数据准备就绪时,将广播包含数据对象的通知

显示数据的第二个场景具有所述通知的唯一注册侦听器


如果在用户决定继续之前广播通知,通知是否会丢失或保留在稍后读取的队列中?

通知仅发送给当前注册的侦听器。就这样


没有排队。如果另一个对象注册了给定的通知,则无法获取以前发送的通知。它将只接收已注册的新通知。

只向当前注册的侦听器发送通知。就这样


没有排队。如果另一个对象注册了给定的通知,则无法获取以前发送的通知。它将只接收已注册的新通知。

NSNotificationCenter
使用

所有当前注册的对象都保存在一个队列中,以便进行特定的通知,并且在发生事件时,已注册以进行通知的对象将被释放并被通知进行通知

没有机制,也不需要发送或通知未注册或以后将注册以前通知或事件的对象


所有当前注册的对象只会被通知。

NSNotificationCenter
使用

所有当前注册的对象都保存在一个队列中,以便进行特定的通知,并且在发生事件时,已注册以进行通知的对象将被释放并被通知进行通知

没有机制,也不需要发送或通知未注册或以后将注册以前通知或事件的对象


所有当前注册的对象只会被通知。

它将丢失。有关详细信息,请阅读。它将丢失。有关更多信息,请阅读。感谢您的快速回复。补充你所说的。。我是否要发布到默认通知队列以实现该功能?@ds011591默认通知中心。把“排队”这个词从你的脑海中抹去,它会带来麻烦。是的,你总是发到默认的通知中心。谢谢你的快速回复。补充你所说的。。我是否要发布到默认通知队列以实现该功能?@ds011591默认通知中心。把“排队”这个词从你的脑海中抹去,它会带来麻烦。是的,您总是发布到默认的通知中心。