今天遇到一个问题,会重复的收到同一个通知多次,如在controller中注册了[[NSNotificationCenter defaultCenter] addObserver:self  selector:@selector(onClicked)  name:@"buttonClicked"],

发现会多次执行onCliked函数,并且随着controller打开关闭次数增加,onClicked函数被执行的次数也在增加,如第一次打开controller,执行了一次onClicked函数,关闭,再打开controller,onClicked执行了2次。。。。

首先确定只有一个地方发送了这个“buttonClicked”的通知,并且通知也的确只发送了一次。

并且是在init中注册NSNotification消息,(viewload viewAppear 中注册可能会引起重入)

后来查询了一下发现在其他地方controller 被retain了,没有释放,controller被retain一次,消息就多注册了一次,且没有被remove,所以会重复的被激活。

转载于:https://www.cnblogs.com/wilma/archive/2013/03/01/2938939.html

关于重复接收NSNotificationCenter发送的通知的问题相关推荐

  1. 来自网页的消息服务器繁处理忙,EventSource 对象用于接收服务器发送事件通知,是网页自动获取来自服务器的更新...

    //--------------------------------客户端代码----------------------------- if(typeof(EventSource) !== &quo ...

  2. 收听NSNotificationCenter发出的通知

    1.问题 想监听使用NSNotification广播的系统和自定义通知. 2.讨论 开始收听通知时,使用通知中心的 addObserver:selector:name:object:实例方法中对象参数 ...

  3. TCP/IP传输层协议实现 - TCP接收窗口/发送窗口/通告窗口(lwip)

    1.tcp通告窗口/接收窗口/发送窗口 接收端有一个接收窗口大小,接收端只能接收这么多数据,接收窗口的数据需要被上层接收后才释放更大接收空间,才可以接收更多数据:接收窗口之前的数据已经被接收,再次接收 ...

  4. 短信猫接收与发送短信整理

    一.主要就用到三个包: 1.log4j-1.2.16.jar 2.smslib-3.5.1.jar 3.comm.jar(这个不需要拷到lib下面) 二.在Windows环境下使用SMSLib编程的时 ...

  5. PHP 命令行模式实战之cli+mysql 模拟队列批量发送邮件(在Linux环境下PHP 异步执行脚本发送事件通知消息实际案例)...

    源码地址:https://github.com/Tinywan/PHP_Experience 测试环境配置: 环境:Windows 7系统 .PHP7.0.Apache服务器 PHP框架:ThinkP ...

  6. C#邮件接收与发送程序

    本章节重点介绍邮件接收与发送方法,在文章中存在//注销部分没有拿掉,便于熟悉功能性. 控件说明 控件:LumiSoft.Net 版本号:4.5.6352.37929,System.Net.Mail 程 ...

  7. 项目实践-SpringBoot项目对接钉钉发送工作通知

    项目实践-SpringBoot项目对接钉钉发送工作通知 **书山有路勤为径,学海无涯苦作舟** 记录程序员生活点点滴滴,希望记录的内容能帮助到努力爬山的各位伙伴!标签:Java/钉钉/工作通知 前言 ...

  8. c pc 和android通讯,Android 客户端与PC服务端socket通信接收与发送图片(终结者)

    前言 这个解决方案是我和队友在<物联网>比赛的集训中得到的.在socket中Android客户端接收图片是相当的棘手(反正我当时就是这样觉得),接收文字还算简单.在刚开始接触socket接 ...

  9. STM32-串口通信(串口的接收和发送)

    文章目录 STM32的串口通信 一.STM32里的串口通信 二.串口的发送和接收 串口发送 串口接收 三.串口在STM32中的配置 四.串口接收的两种实现方式 1. 需要更改的地方 2. 查询RXNE ...

最新文章

  1. .net导出Excel
  2. 【前端开发系列】—— 文字阴影与样式
  3. win10家庭版 VMware Workstation 和 Device/Credential Guard 不兼容
  4. matlab的SVM简单的例子
  5. 四则运算计算器c语言switch,设计一个五个数进行四则运算的计算器 c语言
  6. (洛谷)P2709 小B的询问
  7. 如何在服务器中安装mysql 以及安装禅道
  8. org.n3r.idworker idworker-client生成唯一id
  9. 挑战程序设计竞赛: Fence Repair
  10. 制作纯净版WinPE2.0
  11. Netty学习之读netty权威指南(一)
  12. ios模拟器装ipa包_给iOS 模拟器“安装”app文件
  13. 360浏览器下载|360安全浏览器下载
  14. 淘系自研前端研发工具 AppWorks 正式发布
  15. 「小程序JAVA实战」微信小程序简介(一)
  16. jzoj5983. 【北大2019冬令营模拟2019.1.1】多边形 (组合数学)
  17. node版本回退,用nvm管理node版本
  18. android 查询快捷方式,Android编程添加快捷方式(Short)到手机桌面的方法(含添加,删除及查询)...
  19. flash特效原理 图片滑动放大效果 2
  20. Jquery、Js实现网页打印,及打印样式的自定义

热门文章

  1. 虚拟机系统与宿主机共享上网设置
  2. 内存中的调用别的软件程序加密解密函数_公司加密软件哪个最好用?
  3. mysql 12142_php连接mysql的类mysql.class.php
  4. 大一java期末考笔试_大学java期末考试试题和答案
  5. Python对象基础
  6. IA-32 Intel手册学习笔记(三)任务切换
  7. 通过OpenFoam记录一些c++的trick(持续更新)
  8. Pixhawk之姿态控制篇
  9. HDU 4121 Xiangqi
  10. Jupyter notebook快捷操作