【问题标题】:popViewControllerAnimated work slow inside NSURLSessionDataTaskNSURLSessionDataTask 中的 popViewController 动画工作缓慢
【发布时间】:2014-07-17 08:22:07
【问题描述】:
var request:NSMutableURLRequest = NSMutableURLRequest(URL:URL)
var sessionConf: NSURLSessionConfiguration =       NSURLSessionConfiguration.defaultSessionConfiguration()
var session: NSURLSession = NSURLSession(configuration: sessionConf)
let postData = session.dataTaskWithRequest(request, completionHandler: {(data, response, error) in
//... there some code to work with Core Data

self.navigationController.popViewControllerAnimated(true) // <- This work slow
})

如果我将替换 println("test") 而不是 popViewControllerAnimated 只是为了测试代码与 Core Data 一起工作 - 它在一瞬间工作,我在日志中看到“测试”。但是popViewControllerAnimated 在调用整个应用程序后冻结大约 20-30 秒。我认为这是因为NSURLSessionDataTask 具有请求和响应数据的超时间隔。所以我尝试了:为3.0 制作sessionConfi.timeoutIntervalForResourcesessionConfi.timeoutIntervalForRequest,但它没有帮助。

我找到了这个NSURLSessionDataTask acting suspiciously slow

但我无法添加dispatch_async(dispatch_get_main_queue()),因为UIViewController is not a subtype of Void。我应该在哪里定义类型?

【问题讨论】:

    标签: swift


    【解决方案1】:

    that 解决这个问题。只需转换为 Swift。

    var session: NSURLSession = NSURLSession(configuration: sessionConf, delegate: nil, delegateQueue: NSOperationQueue.mainQueue())
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-22
      • 1970-01-01
      • 1970-01-01
      • 2012-06-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多