延时 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);
}];
网友评论