GCD使用(三)执行延时操作

本文详细介绍了如何在iOS应用中利用Grand Central Dispatch进行延时操作,包括非GCD的简单延时实现以及使用dispatch_after和dispatch_after_f进行更复杂的同步延时任务。通过实例演示了如何在指定延迟后执行特定操作,同时提供了关键参数的解释,如dispatch_time_t用于计算时间戳,以及如何选择合适的队列进行延时任务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1。自带的延时(非GCD)  

- (void) printString:(NSString *)paramString{

    NSLog(@"%@", paramString);

}

-(void)actionDelay {

    [self performSelector:@selector(printString:) withObject:@"Grand Central Dispatch"  afterDelay:3.0];

}

2。GCD延时-dispatch_after , dispatch_after_f 同步操作

     dispatch_time_t : dispatch_t ( baseTime , addTime ) 

     dispatch_after ( delayTime , queue , block )

     dispatch_after_f (delayTime , queue , parameter , C_function ) 

e.g.

    double delayInSeconds = 2.0;

    dispatch_time_t delayInNanoSeconds = dispatch_time(DISPATCH_TIME_NOW, delayInSeconds * NSEC_PER_SEC);   

    dispatch_queue_t concurrentQueue =  dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);  

    dispatch_after(delayInNanoSeconds, concurrentQueue, ^(void){

        /* Perform your operations here */

    });


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值