美文网首页
GCD线程延时

GCD线程延时

作者: KUANGJUNJIE | 来源:发表于2017-05-27 14:02 被阅读0次

//swift中的线程延时

 let time: TimeInterval = 1.0
            DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + time) {
                print("延时1秒执行")
            }

//在主线程中延迟执行某动作,不会卡主主线程,不影响后面的东做执行

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

NSLog(@"%@", [NSThread currentThread]);

});

//在子线程中执行某动作,不会卡主整个线程

dispatch_queue_t queue= dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0);

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

NSLog(@"%@", [NSThread currentThread]);

});

//实现延迟,该线程本身在哪个线程中就再哪个线程中执行

NSURL *url = [NSURL URLWithString:@"http://59320.jpg.com"];

[selfperformSelector:@selector(download:) withObject:url afterDelay:3];

//利用sleep实现延迟(不要用这个,会卡住主线程,即后面的动作不会执行)

[NSThread sleepForTimeInterval:3];

相关文章

  • 7.3 多线程-GCD

    多线程-GCD 多线程-GCD-串行并行 多线程-GCD.png GCD-线程的通讯、延时操作、定时器 GCD-线...

  • iOS小知识点(GCD)

    GCD延时加载 主线程更新UI

  • GCD线程延时

    //swift中的线程延时 //在主线程中延迟执行某动作,不会卡主主线程,不影响后面的东做执行 //在子线程中执行...

  • 7.多线程基础(七)GCD加强

    1.GCD串行队列和并发队列 2.GCD延时执行 3.GCD线程组:(的作用) 4.GCD定时器: GCD的实现 ...

  • swift 多线程GCD实战经验

    GCD (Grand Central Dispath) 回到主线程执行UI刷新 延时执行 时间是可能会有延迟, 而...

  • ios多线程操作— GCD延迟操作和相关使用方法

    ios多线程操作— GCD延迟操作和相关使用方法 0x01.iOS版本 使用GCD函数可以进行延时操作,该函数为 ...

  • GCD编程

    今天谈论gcd编程的相关知识,gcd编程应该包涵的知识点有:g c d串行队列和并发队列,g c d的延时,线程组...

  • 多线程-理论

    多线程GCD---同步/异步 ,串行/并发 1.死锁 2.延时函数(dispatch_after) 3.使用dis...

  • GCD其它常用函数(四)

    一. 延迟执行 iOS常见的延时执行调用NSObject的方法 使用GCD函数(延迟并控制方法在哪个线程执行) 使...

  • 三种常见的延时执行方式

    三种常见的延时执行方式 GCD 方便灵活,可以随意使用。 performSelector方法族 当前线程必需启动r...

网友评论

      本文标题:GCD线程延时

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