美文网首页
iOS开发中常用的延时delay操作?区别?

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

作者: 随心吧 | 来源:发表于2017-02-16 13:57 被阅读51次
    图,奋斗吧,骚年

    『导言』

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


    方法:
    • 调用NSObject的performSelector方法
    [self performSelector:@selector(run) withObject:nil afterDelay:2.0];
    // 2秒后再调用self的run方法
    
     * 分析:
    
    此方法比较容易上手,简单,推荐一般使用```
    
    * 使用GCD函数的`dispatch_after `
    

    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
    // 2秒后执行这里的代码...
    });

     * 分析:
    

    可以自己决定在那个队列中执行,当前用主队列中执行,推荐高手使用

    
    * 使用NSTimer
    

    [NSTimer scheduledTimerWithTimeInterval:2.0 target:self selector:@selector(test) userInfo:nil repeats:NO];

     * 分析:
    

    可能需要手动管理释放

    相关文章

      网友评论

          本文标题:iOS开发中常用的延时delay操作?区别?

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