Swift GCD多线程

2019-04-29  本文已影响0人  司南_01b7

//创建队列

let dataQueue = DispatchQueue(label: "最新出租信息")

//数据async异步请求

            dataQueue.async {

                NEWHOMES = []  //防止叠加

                for house in houseList {

                    let urlStr = NSURL(string: "\(BASEURL)img/\(house.himage)")

                    let data = NSData(contentsOf: urlStr! as URL)

                    let image123 = UIImage(data: data! as Data)

                    NEWHOMES.append(NewHomeMessage(image: image123!, name: house.hname, score: house.hprice, danwei: "元/月", houseid: house.hid, adress: house.hsite, fangdong: house.Landlord_id, housetype: house.htype))

                }

//UIKit框架是线程不安全的,UI操作必须在主线程进行,相当于人为给UIKit框架加锁

                let mainQueue = DispatchQueue.main

                mainQueue.async {

                    self.setupUI()      //展示轮播活动和最新出租信息

                }

上一篇 下一篇

猜你喜欢

热点阅读