【发布时间】:2015-05-18 00:09:36
【问题描述】:
我需要一些方法来暂停和恢复for 循环。我有这个代码:
for (var i = 0; i < paramsArray.count; i++) {
var stringResponse: String!
var urlString: String
if paramsArray[i].arduinoHTTPPort == 80 {
urlString = String(format: "http://%@/arduino/%@/%i/", arguments: [paramsArray[i].arduinoAddress, paramsArray[i].pinType.lowercaseString, paramsArray[i].arduinoPin])
} else {
urlString = String(format: "http://%@:%i/arduino/%@/%i/", arguments: [paramsArray[i].arduinoAddress, paramsArray[i].arduinoHTTPPort, paramsArray[i].pinType.lowercaseString, paramsArray[i].arduinoPin])
}
let url = NSURL(string: urlString)
let request = NSURLRequest(URL: url!)
NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue.mainQueue()) {(response, data, error) in
println(NSString(data: data, encoding: NSUTF8StringEncoding))
stringResponse = NSString(data: data, encoding: NSUTF8StringEncoding) as! String
//Need to resume loop here
}
//Need to stop loop here
}
如何快速停止和恢复循环,或者有没有其他方法可以做到这一点?
【问题讨论】:
-
你想完成什么?为什么需要暂停这个循环?
-
整个方法更新
UITableView。当设备收到来自服务器的响应时,应逐步更新每个单元格。