美文网首页
iOS开发,延时操作(定时器)

iOS开发,延时操作(定时器)

作者: DreamerForever | 来源:发表于2017-08-16 16:55 被阅读0次

开发中有时候会执行一些操作,但是不希望立刻执行,而是在一段时间后,或者特定的时间中去执行按方法,这个时候就需要我们做一些延时操作了,有人可能第一反映想到了定时器,不错,这也是其中的一种实现方法。

熟悉iOS开发的人应该都知道,iOS中为我们提供了至少三种延时操作的方法,两个跟多线程有关,一个跟定时器有关。以下是这三个方法:

1、[NSTimer scheduledTimerWithTimeInterval:7 target:self selector:@selector(showView) userInfo:nil repeats:NO];

这个就是通过定时器来做的,这种方式非常方便不用我们手动添加到runloop上,

NSTimer *myTimer= [NSTimer timerWithTimeInterval:7.0target:selfselector:@selector(timerFired:)userInfo:nilrepeats:NO];

[[NSRunLoop currentRunLoop]addTimer:myTimerforMode:NSDefaultRunLoopMode];

这种方式创建的定时器要添加到runloop上,否则是没有效果的,创建完后如果想要立即执行的可以调用 -(void)fire;方法,-(void)invalidate;方法可以停止定时器,将定时器从runLoop中移除。

2、[self performSelector:@selector(startGame) withObject:self afterDelay:5];这是第二种方法,

3、dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(3 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{

});

以上是经常用到的延时方法。

相关文章

  • iOS开发,延时操作(定时器)

    开发中有时候会执行一些操作,但是不希望立刻执行,而是在一段时间后,或者特定的时间中去执行按方法,这个时候就需要我们...

  • ios开发:延时操作

    延时执行的四种方法 一、performSelector方法 二、 NSTimer定时器 三、 NSThread线程...

  • iOS定时器,你真的会使用吗?

    前言 定时器的使用是软件开发基础技能,用于延时执行或重复执行某些方法。 我相信大部分人接触iOS的定时器都是从这段...

  • iOS进阶-谈谈定时器

    目录 iOS提供定时器API 定时器开发中的坑 一、 iOS提供定时器API 二、定时器开发中的坑 2.1、必须办...

  • iOS开发中常用的延时delay操作?区别?

    『导言』 在iOS开发中经常有需求,延时某个操作执行,比如启动页延时,来加载后台的数据,给人一种快的假象! 方法:...

  • golang-定时器

    定时器 和 断续器 定时器:延时某些操作任务断续器:设置的好间隔时间,周而复始的执行任务

  • iOS延时操作和一次性代码

    1在开发过程中可能会用到一些延时的操作,下面是iOS常见的延时操作用法。 2一次性代码,放到里面的代码,在程序运行...

  • iOS开发探索-延时操作浅谈

    在实际开发中,有时会需要用到延时操作,即操作任务间隔一段时间后执行,以下提供四种方案可供参考: 方法一:- (vo...

  • Timer 实现倒计时功能

    Android 定时器 在Android开发中有些任务是需要通过延时来完成的,这个时候就用到了定时器Timer

  • iOS常见三种定时器-NSTimer、CADisplayLink

    在iOS开发过程当中,我们经常会直接或间接地使用到定时器,iOS系统中,带有延迟性操作的函数都是基于NSTimer...

网友评论

      本文标题:iOS开发,延时操作(定时器)

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