IOS开发之——多线程-延迟执行(8)
一 概述
IOS常见的延迟执行有两种:
1.调用NSObject的方法
1 | [self performSelector:@selector(run) withObject:nil afterDelay:2.0];//2秒后调用self的run方法 |
2.使用GCD函数
1 | dispatch_after(dispatch_time(DISPATCH_TIME_NOW,(int64_t)(2.0*NSEC_PER_SEC)),dispatch_get_main_queue(),^{ |
二 延迟执行示例代码
2.1 示例一
1 | //延迟执行不要使用sleep,坏处:卡住当前线程 |
2.2 示例二
1 | //延迟执行,不会卡住当前线程(主线程) |
2.3 示例三
1 | //延迟执行,不会卡住当前线程(主线程) |
2.4 示例四
1 | //延迟执行,不会卡住当前线程(子线程) |
2.5 示例五
1 | -(void)delay5{ |
注:download方法
1 | -(void)download:(NSString *)url{ |