如何在游乐场运行异步回调

如何在游乐场运行异步回调

许多Cocoa和CocoaTouch方法都将完成回调作为Object-C中的块和SWIFT中的闭包来实现。但是,在游乐场中尝试这些操作时,永远不会调用完成。例如:

// Playground - noun: a place where people can playimport Cocoaimport XCPlaygroundlet url = NSURL(string: " 
let request = NSURLRequest(URL: url)NSURLConnection.sendAsynchronousRequest(request, queue:NSOperationQueue.currentQueue()
 {response, maybeData, error in

    // This block never gets called?    if let data = maybeData {
        let contents = NSString(data:data, encoding:NSUTF8StringEncoding)
        println(contents)
    } else {
        println(error.localizedDescription)
    }}

我可以在我的游乐场时间表中看到控制台输出,但是println在我的完井区从来没有叫过.。


MM们
浏览 550回答 3
3回答

肥皂起泡泡

此API在Xcode 8中再次更改,并被移动到PlaygroundSupport:import PlaygroundSupport PlaygroundPage.current.needsIndefiniteExecution = true这一变化在2016年WWDC第213次会议.
打开App,查看更多内容
随时随地看视频慕课网APP