美文网首页
GCD定时器实现动态检测

GCD定时器实现动态检测

作者: 印度a三 | 来源:发表于2016-07-18 12:51 被阅读82次
    • (void) timer{
      dispatch_queue_t quque = dispatch_queue_create("myQ", 0);
      dispatch_source_t timer=dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, quque);

      uint64_t interval = 1 * NSEC_PER_SEC; // 时间间隔1秒

      dispatch_source_set_timer(timer, dispatch_time(0.8, 0), interval, 0); // 延迟0.8秒执行

      dispatch_source_set_event_handler(timer, ^{

        switch (self.Searchflag) {
            case 0:{
                YYLog(@"启动")
                
                break;
            }
            case 1:{
                
                dispatch_sync(dispatch_get_main_queue(), ^{
                    [_searchRedRubineView stopSearchAnimation:^{
                        
                        _searchRedRubineView.failSearch = YES;
                    }];
                    
                    dispatch_source_cancel(timer);
                });
                
               
                break;
            }
            case 2:{
                YYLog(@"搜索完毕")
                // 关闭
                dispatch_suspend(timer);
                
                YYLog(@"%@",timer)
                break;
            }
            default:
                break;
        }
      

      });

      dispatch_source_set_cancel_handler(timer, ^{
      self.Searchflag = 0;
      NSLog(@"cancel");
      });

      dispatch_resume(timer);

    相关文章

      网友评论

          本文标题:GCD定时器实现动态检测

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