【发布时间】:2016-04-27 09:49:43
【问题描述】:
我有一个带有 iOS 和 Webservice 的小项目,我尝试在打开这个应用程序时从 webservice 加载数据。因此,当数据加载时,UIthread 将“暂停”......那么我如何才能像 Android 中的 AsyncTask 一样在后台执行呢?
self.conectDataNew.DemoSVNew("Movie", field: "IDMovie,Image,NameViet,Point", condition: "Year|DESC,Limit|7,IDState|2", request: "") { (stringData) in
let dataArray = stringData.componentsSeparatedByString("|")
let decodedData = NSData(base64EncodedString: dataArray[2], options: NSDataBase64DecodingOptions(rawValue: 0))
let decodedString = NSString(data: decodedData!, encoding: NSUTF8StringEncoding)
let dataArr = decodedString!.componentsSeparatedByString("<row>")
for i in 0...dataArr.count-1 {
let menu = dataArr[i].componentsSeparatedByString("|")
let url:NSURL = NSURL(string: menu[1])!
let dt :NSData = NSData(contentsOfURL: url)!
self.idNew.append(menu[0])
self.posterNew.append(dt)
self.namesNew.append(menu[2])
self.scoreNew.append(menu[3])
}
self.clvNew?.reloadData()
}
【问题讨论】:
-
你试过谷歌搜索
swift asynchronous吗?第一个结果是raywenderlich.com/79149/…! -
dispatch_async(dispatch_get_global_queue(Int(QOS_CLASS_USER_INITIATED.value), 0)) { // 1 let overlayImage = self.faceOverlayImageFromImage(self.image) dispatch_async(dispatch_get_main_queue()) { // 2 self.fadeInNewImage (overlayImage) // 3 } } 是这个方法吗?后台在哪里做?
-
阅读教程,没什么好说的。
标签: ios swift multithreading