swift3.0 dispatch_after 延时操作
2016-11-28 00:00
369 查看
贡献者:赵大财
博客:https://my.oschina.net/zhaodacai GitHub:https://github.com/dacaizhao
邮箱: dacai_zhao@163.com QQ:327532817
=============================
博客:https://my.oschina.net/zhaodacai GitHub:https://github.com/dacaizhao
邮箱: dacai_zhao@163.com QQ:327532817
=============================
DispatchQueue.main.asyncAfter(deadline: .now() + 0.9) { self.currentView.isUserInteractionEnabled = true }
func hideView(afterDelay:CGFloat) { let after = TimeInterval(afterDelay) DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + Double(Int64(after * Double(NSEC_PER_SEC))) / Double(NSEC_PER_SEC), execute: { self.maskview.removeFromSuperview() }) }
DispatchQueue.global().async { //耗时操作 DispatchQueue.main.async { //刷新UI } }
// 创建一个队列组 let group = DispatchGroup() // A任务入组 group.enter() // A任务异步操作 DispatchQueue.global().async(group: group, execute: DispatchWorkItem(block: { sleep(2) print("download task A ...") // 出组 group.leave() })) // B任务入组 group.enter() // B任务异步操作 DispatchQueue.global().async(group: group, execute: DispatchWorkItem(block: { sleep(2) print("download task B ...") // 出组 group.leave() })) // 主线程监听,只有当队列组中没有任务,才会执行闭包。如果多次调用该方法,每次都会去检查队列组中是否有任务,如果没有任务才执行 group.notify(queue: DispatchQueue.main) { print("complete!") }
相关文章推荐
- swift3.0中的自定义下拉刷新和模拟延时操作(同时和OC中的进行对比)
- swift实现dispatch_after
- iOS Swift下dispatch_after的写法
- iOS Swift下dispatch_after的写法
- swift--Swift 3.0实战:实现Dispatch once扩展
- 十四 Swift3.0之 数组的其他操作
- Swift3.0 / swift2.3中dispatch_group的使用
- Swift 4.0中 GCD定时器写法,及延时操作
- 关于GCD 延时操作 简单理解 (dispatch_asycn,dispatch_sycn)
- 完整详解swift GCD系列(二)dispatch_after;dispatch_apply;dispatch_once
- Swift 3.0中C语言指针类型在Swift编程语言中如何操作
- dispatch_after-延迟执行的操作使用方法
- dispatch_after的使用及iOS延时实现方法
- dispatch_after 的swift 3 版本
- swift 4.0中dispatch_async,dispatch_after的使用
- swift3.0 文件操作
- LED显示(4):使用内核IO操作及延时函数
- C# 3.0入门系列(四)-之Select操作
- 在DELPHI2.0/3.0中直接操作端口
- Python3.0 我的DailyReport 脚本(一) 使用COM操作Excel