社区
iOS
帖子详情
NSTimer的释放问题
NAUYNUJUG
2018-03-06 03:37:08
app的功能要求能在页面里按钮打开后台的定时循环任务一直后台运行,然后继续其他操作,包括离开当前页面啊等等,到时需要停止的时候就再回到页面结束,我是用的NSTimer来实现循环任务,但是在网上了解的都是需要在离开页面时就释放NSTimer,否则会内存泄漏云云,请问这个该怎么解决,如何能实现后台循环任务还能离开当前页面,后面还能释放这个定时器?
...全文
1276
5
打赏
收藏
NSTimer的释放问题
app的功能要求能在页面里按钮打开后台的定时循环任务一直后台运行,然后继续其他操作,包括离开当前页面啊等等,到时需要停止的时候就再回到页面结束,我是用的NSTimer来实现循环任务,但是在网上了解的都是需要在离开页面时就释放NSTimer,否则会内存泄漏云云,请问这个该怎么解决,如何能实现后台循环任务还能离开当前页面,后面还能释放这个定时器?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
铘少偌夢
2018-11-15
打赏
举报
回复
这个问题最主要的重点是释放的时机,比如当任务完成后就释放NSTimer,可以在NSTimer的循环方法中去判断任务完成的时机,当完成时就释放NSTimer。例如下面的代码,偏移时间和时间节点的比较: if (self.timeOffset >= self.duration) { [self.timer invalidate]; self.timer = nil; }
ShenYj_4
2018-10-09
打赏
举报
回复
楼上基本都补充到了 我在汇总一下: 1. 这个NSTimer在这种场景下,不适合放在页面里了, 应该放在一个生命周期更长的类中 2. 指望定制器实现后台是没戏了, 支持后台的功能很多,比如:音频、蓝牙、定位。。。,可以结合业务配合其中一种功能开启后台模式
weixin_41694952
2018-09-29
打赏
举报
回复
实现一个全局类,这个类不能做其他任何事情,只是持有这个NSTimer。 当你第一次进入这个页面的时候,初始化该全局类,自动创建NSTimer,并执行,此时NSTimer和全局类绑定,和页面没有关系 当你不需要NSTimer时,释放该全局类,并在全局类的dealloc方法里调用NSTimer 的 invalidate 函数,完成对NSTimer的释放 为什么能释放? 因为NSTimer的delgate是Strong类型的,之所以会引起内存泄漏,是因为当你在页面里强引用NSTimer时,NSTimer的delegate又强引用了页面,所以才会出现内存泄漏。
大飞哥666
2018-03-13
打赏
举报
回复
你需要解决2个问题: 1.是如何保证NSTimer不被释放。楼上的朋友已经帮你解决了,将NSTimer放到不会被销毁的类里边,比如AppDelegate。 2.你需要保证你的APP在后台能够一直运行。正常情况下,你进入后台,APP就会被挂起,所以你需要解决一下这个问题。可以参考我的博客,里边有一篇正好是介绍APP后台运行的文章。 希望能帮助到你。
不担心
2018-03-12
打赏
举报
回复
"app的功能要求,能在页面里,按钮打开后台的定时循环,任务一直后台运行" 应该是这个意思吧,整个看下来没有特别的地方啊,你可以把NSTimer放在类似AppDelegate的公共类里就和你的页面没关系了啊,在AppDelegate里定义一个NSTimer,在启动的时候初始化他,但不要运行,然后在你需要控制的页面,比如A中点击了按钮再启动NSTimer,这时候A你要关闭要干嘛都不影响timer,要关闭的话回到A页面关闭,没有问题
ios 时间定时器
NS
Timer
应用demo
ios
NS
Timer
应用demo 。iphone6.1 测试通过。具体demo截图和说明在:http://blog.csdn.net/donny_zhang
NS
Timer
定时器
定时器
swift-常见
NS
Timer
的消毁方法用一种优雅的方式销毁
NS
Timer
常见
NS
Timer
的消毁方法,用一种优雅的方式销毁
NS
Timer
iOS
NS
Timer
循环引用的办法
主要介绍了iOS
NS
Timer
循环引用的办法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
NS
Timer
使用 文档说明
详细的
NS
Timer
类的使用 文档说明 是开发的很好的帮助文档
iOS
29,044
社区成员
12,469
社区内容
发帖
与我相关
我的任务
iOS
主要讨论与iOS相关的软件和技术
复制链接
扫一扫
分享
社区描述
主要讨论与iOS相关的软件和技术
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章