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

图,奋斗吧,骚年

『导言』

在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];

 * 分析:

可能需要手动管理释放

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容