美文网首页
ios- NSTimer的学习

ios- NSTimer的学习

作者: 歌白梨 | 来源:发表于2015-07-25 23:34 被阅读83次

1.不管是重复性的timer还是一次性的timer都会对它的方法的接收者进行retain,这两种timer的区别在于“一次性的timer在完成调用以后会自动将自己invalidate,而重复的timer则将永生,直到你显示的invalidate它为止”。

2.企图在dealloc中对timer进行invalidate是一种自欺欺人的做法,因为你的timer对self进行了retain,如果timer一直有效,则self的引用计数永远不会等于0

3.

_timer= [NSTimer scheduledTimerWithTimeInterval:1target:self selector:@selector(testTimer:) userInfo:nil repeats:YES];

timer都会对它的target进行retain,我们需要小心对待这个target的生命周期问题,尤其是重复性的timer。

4.timer不是一种实时的机制,会存在延迟,而且延迟的程度跟当前线程的执行情况有关。

5.runloopMode设置

6.要让timer生效,必须保证该线程的runloop已启动,而且其运行的runloopmode也要匹配。

相关文章

  • ios- NSTimer的学习

    1.不管是重复性的timer还是一次性的timer都会对它的方法的接收者进行retain,这两种timer的区别在...

  • iOS-定时器 NSTimer

    首先关闭定时器不能使用上面的方法,应该使用下面的方法: 然后就可以使用下面的方法再此开启这个timer了:

  • iOS-私有API与runtime

    iOS-私有API与runtime iOS-私有API与runtime

  • iOS-代码混淆加固策略

    iOS-代码混淆加固策略 iOS-代码混淆加固策略

  • iOS-性能优化深入探究

    iOS-性能优化深入探究 iOS-性能优化深入探究

  • NSTimer学习笔记

    1. 什么是NSTimer   官方的解释“A timer provides a way to perform a...

  • NSTimer学习笔记

    NSTimer是iOS最常用的定时器工具之一,在使用的时候常常会遇到各种各样的问题,最常见的是内存泄漏,通常我们使...

  • NSTimer学习笔记

    一、NSTimer认识 NSTimer其实是将一个监听加入到系统的RunLoop中去,当系统runloop到如何t...

  • NSTimer

    创建NSTimer 创建NSTimer的常用方法是: + (NSTimer *)scheduledTimerWit...

  • iOS-自动打包及分发(三)

    iOS-自动打包及分发(一)iOS-自动打包及分发(二)iOS-自动打包及分发(三) 废话不多说了,上正文: 一、...

网友评论

      本文标题:ios- NSTimer的学习

      本文链接:https://www.haomeiwen.com/subject/cqrmqttx.html