博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DispatchSemaphore & DispatchGroup
阅读量:6241 次
发布时间:2019-06-22

本文共 1794 字,大约阅读时间需要 5 分钟。

标记

DispatchSemaphore

let semaphore = DispatchSemaphore(value: 0)    let dispatchQueue = DispatchQueue.global()    dispatchQueue.async {        WKManager().requestPreiodTrendData(symbol: self.compare1Item.code) { obj in            if let obj = obj {                self.trend1Data = obj.sorted(by: { (obj1, obj2) -> Bool in                    return obj1.key < obj2.key                })                semaphore.signal()            }        }        semaphore.wait()                WKManager().requestPreiodTrendData(symbol: self.compare2Item.code) { obj in            if let obj = obj {                self.trend2Data = obj.sorted(by: { (obj1, obj2) -> Bool in                    return obj1.key < obj2.key                })                semaphore.signal()            }        }        semaphore.wait()                DispatchQueue.main.async {            if self.indicatorView.isAnimating {                self.indicatorView.stopAnimating()            }            self.loadDataAndShow()        }    }复制代码

DispatchGroup

let group = DispatchGroup()    group.enter()    WKManager().requestPreiodTrendData(symbol: self.compare1Item.code) { obj in        if let obj = obj {            self.trend1Data = obj.sorted(by: { (obj1, obj2) -> Bool in                return obj1.key < obj2.key            })            group.leave()        }    }    group.enter()    WKManager().requestPreiodTrendData(symbol: self.compare2Item.code) { obj in        if let obj = obj {            self.trend2Data = obj.sorted(by: { (obj1, obj2) -> Bool in                return obj1.key < obj2.key            })            group.leave()        }    }    group.notify(queue: .main) {        if self.indicatorView.isAnimating {            self.indicatorView.stopAnimating()        }        self.loadDataAndShow()    }复制代码

转载地址:http://wqcia.baihongyu.com/

你可能感兴趣的文章
Tomcat 部署 Web 通过 ip 直接访问项目
查看>>
Cache Fusion
查看>>
bzoj2502
查看>>
Xcode 控制台打印Unicode字符串转换为中文
查看>>
Codeforces 831C--Jury Marks (思维)
查看>>
oracle内存结构+系统全局区+程序全局区(pga)+排序区+大型池+java池
查看>>
成长7 - lambda,filter,map的运用
查看>>
New Concept English Two 18 46
查看>>
Qt 删除目录
查看>>
Git 移除某些文件
查看>>
poj2940
查看>>
django做form表单的数据验证
查看>>
【OpenFOAM】——OpenFOAM入门算例学习
查看>>
STL UVA 11991 Easy Problem from Rujia Liu?
查看>>
模拟 URAL 1149 Sinus Dances
查看>>
Oracle 11G 数据库迁移【expdp/impdp】
查看>>
17.EXTJs 中icon 与iconCls的区别及用法!
查看>>
3.mybatis实战教程(mybatis in action)之三:实现数据的增删改查
查看>>
Caused by: Unable to load bean: type: class:com.opensymphony.xwork2.ObjectFactory - bean - jar
查看>>
让你拥有超能力:程序员应该掌握的统计学公式
查看>>