NSNotificationCenter可能导致错误。您知道更优雅的解决方案吗?
-
27-10-2019 - |
题
我可以两次(偶然)将观察者添加到通知中心,并且两次将收到通知。 是否只能收到一个通知?您知道更优雅的解决方案吗?
我向您展示此示例,因为这可能会导致错误。 通用标签
解决方案
如果不确定是否在其他地方添加了观察者,则每次添加观察者时都可以使用以下代码 通用标签
这样,您将删除旧的(如果存在)并添加新的。
这不是100%的失败证明,但这只是一个开始。在调用异步或其他特殊情况的多线程应用中,这可能会失败。
其他提示
您还可以将一个对象设置为nil,然后再将该对象用作仍然有效的对象。
不是所有的事情都可以使之失效。
不隶属于 StackOverflow