美文网首页
Swift GCD 延时执行

Swift GCD 延时执行

作者: 男神nick | 来源:发表于2021-04-25 11:53 被阅读0次

延时 0.5 秒执行

//延时 0.5s 执行DispatchQueue.global().asyncAfter(deadline:DispatchTime.now()+0.5){//此时处于主队列中self.refreshDeviceList()}                                                                                                                                                    

DispatchQueue.global()获取系统global队列

DispatchTime.now()获取当前时间

如果refreshDeviceList()中有刷新 UI 的操作记得放在主线程。

回到主线程操作:

DispatchQueue.main.async{//UI操作self.tableView.reloadData()}

可以直接放在主线程执行这个延时操作,由于是异步的,并不会阻塞主线程。

DispatchQueue.main.asyncAfter(deadline:DispatchTime.now()+0.5){self.refreshDeviceList()}

    // 访客登录

    [BDCoreApis loginWithAppkey:DEFAULT_TEST_APPKEY withSubdomain:DEFAULT_TEST_SUBDOMAIN resultSuccess:^(NSDictionary *dict) {

        // 登录成功

        DDLogInfo(@"%s, %@", __PRETTY_FUNCTION__, dict);

    }resultFailed:^(NSError*error) {

        // 登录失败

        DDLogError(@"%s, %@", __PRETTY_FUNCTION__, error);

    }];

相关文章

网友评论

      本文标题:Swift GCD 延时执行

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