首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >监控NSNotifications

监控NSNotifications
EN

Stack Overflow用户
提问于 2013-03-04 20:52:01
回答 1查看 157关注 0票数 2

我在一篇关于Overhead of NSNotifications的评论中注意到,用户JustSid说

如果应用程序不每次运行循环发送30+,开销就不会明显

我想编写一个小助手类,它跟踪在当前运行循环循环中发送了多少个NSNotifications,并提醒我,如果它高于某个预先可配置的数字。我知道我可以注册所有通知(将0传递给name和object),但是如何跟踪它们是从哪个运行循环周期发送的呢?

EN

回答 1

Stack Overflow用户

发布于 2013-03-04 21:20:21

在NSNotificationCenter上有一个类别是很容易的,它在添加通知观察者时会增加一些内部整数(因此,当它被移除时会减少),但是您必须问自己:多少是太多?

如果您认为它是一个任意整数(例如,30 ),那么当您在比现在有更多内存和处理器约束的设备上测试它时会发生什么呢?如果您在一个可以轻松处理30个观察者和浮动通知的设备上测试它(这将是完全的浪费),会发生什么?虽然编写一般规则是可能的,但在每种情况下都不可能评估通知对应用程序响应时间的影响。

另一种可能是让后台进程查询通知堆栈(或者在某种程度上像上面那样在内部度量它),当观察者的数量将某些系统功能带到爬行时。当然,忽略这个事实,这是太多的工作,您将设计一个子系统,它可能会使用尽可能多的内存和盗取尽可能多的性能,因为你试图补救它在第一次!

您可以使用许多其他的模式和结构来代替通知,那么您为什么要满足NSNotification的需求呢?

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

https://stackoverflow.com/questions/15210898

复制
相关文章

相似问题

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