GCD(dispatch_after)

本文详细介绍了DispatchAfter函数的使用方法及注意事项。通过实例演示了如何利用该函数实现延迟执行任务的功能,并解释了相对时间单位的选择及其对任务调度的影响。

 //Dispatch After

    //一段时间之后,把要执行的任务追加到队列当中

    

    //创建时间

    //相对的时间点    相对第一个参数多长时间之后

    dispatch_time_t time =dispatch_time(DISPATCH_TIME_NOW,3ull * NSEC_PER_SEC);

    

    //时间的单位

    //NSEC_PER_SEC  

    //NSEC_PER_MSEC 毫秒

    //NSEC_PER_USEC 微秒

    

    //dispatch_time_t指定的时间

    dispatch_after(time,dispatch_get_main_queue(), ^{

        NSLog(@"after 3s");

    });

    

    //第二种用法

    dispatch_after_f(dispatch_time(DISPATCH_TIME_NOW,3ull * NSEC_PER_SEC),dispatch_get_main_queue(), NULL,func1);

    

    

    //自己使用

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

        

        ;

    });

    

#warning 注意

    //1.不是一段时间之后执行相应的任务(而是把要执行的任务追加到队列当中)

    //2.主线程 runloop 1/60秒检测事件,追加的时间范围 3s - (3 + 1/60)s

    

    

    

}


void func1()

{

    

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值