首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSNotifications的开销

NSNotifications的开销
EN

Stack Overflow用户
提问于 2011-06-10 00:15:37
回答 2查看 1.1K关注 0票数 1

我最近开始使用NSNotifications:

代码语言:javascript
复制
[[NSNotificationCenter defaultCenter] postNotificationName: selector: object:]; ....

我发现对于视图控制器之间的通信来说,这是一个很棒的概念。使用NSNotifications来处理应用程序中的所有通信似乎有点太容易了。

如果我在我的应用程序中使用NSNotifications来完成大部分工作,你认为对其中太多的人来说,开销是多少?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-06-10 00:31:59

我似乎记得曾经读到过NSNotification非常消耗开销,所以大量使用它们可能不是最好的主意。相反,我会考虑采用delegate协议。您可以轻松地创建自己的文件来告诉您的文件执行什么操作以及何时执行。

This site给出了一个非常类似于我用来学习如何创建委托的示例,可能值得研究一下。我过去一直使用NSNotifications,直到我了解了委托,后来我把所有的通知都换成了委托方法

票数 1
EN

Stack Overflow用户

发布于 2011-06-10 00:37:41

关于NSNotification,您需要记住的一件事是它们是一种阻塞机制。因此,虽然发布通知的对象不需要知道谁在接收它,但如果接收者太多,它将不得不处理所有接收者,然后postNotification调用才能返回。这是你必须考虑的事情。

因此,就像@slev所说的,委托是一种更好的方法。仅当您不能使用委托方法时才使用通知。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6295999

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档