使用GCD验证码倒计时

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用GCD验证码倒计时相关的知识,希望对你有一定的参考价值。

 __block int timeout = 60;
    dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0);
    
    dispatch_source_t source_t = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, queue);
    
    dispatch_source_set_timer(source_t, dispatch_walltime(NULL, 0), 1*NSEC_PER_SEC, 0);
    
    dispatch_source_set_event_handler(source_t, ^{
        
        if (timeout<=0) {
            
            dispatch_source_cancel(source_t);
            dispatch_async(dispatch_get_main_queue(), ^{
                
                NSLog(@"重新开始倒计时");
            });
            
            
        }
        else
        {
            dispatch_async(dispatch_get_main_queue(), ^{
                
                NSLog(@"开始倒计时剩余%.2ds",timeout%60);
            });
        
            timeout --;
            
            
        }
        
        
        
    });
    dispatch_resume(source_t);
    
    
    
    
    
    

  

以上是关于使用GCD验证码倒计时的主要内容,如果未能解决你的问题,请参考以下文章

Angular.js 使用获取验证码按钮实现-倒计时

C#实现发送验证码倒计时60秒

html 发送验证码倒计时代码

Android开发:验证码倒计时功能实现

倒计时获取验证码事件代码

Jquery验证码倒计时