ios – 正在主线程上执行长时间运行的操作.迅速

在我的ProfileViewController中,我有一个查询,用于检索存储为PF文件的用户个人资料图片.

var query = PFQuery(className:"Users")
    query.whereKeyExists("profilePicture")
    query.findObjectsInBackgroundWithBlock {
        (objects: [AnyObject]!, error: NSError!) -> Void in
        if error == nil {

            self.userNameLabel.text = PFUser.currentUser().username

            if let imageFile = PFUser.currentUser().objectForKey("profilePicture") as? PFFile {
                if let data = imageFile.getData() {
                    self.profPic.image = UIImage(data: data)
                }
            }

        }
        else {
            println("User has not profile picture")
        }
    }

这是此视图中唯一的查询,我的应用程序主页中有另一个查询,其中包含所有用户的所有帖子.我得到的错误我正在主线程上执行长时间运行的操作.接下来是Break on warnBlockingOperationOnMainThread()来调试.

我不知道如何解决这个问题,特别是因为我需要做另一个查询来获取当前用户发布的配置文件.我应该使用findObjectsInBackgroundWithBlock以外的东西.谢谢.

警告来自Parse sdk.这部分:imageFile.getData()是同步的,Parse足以在使用任何阻塞调用时发出警告.有几种getDataInBackground …可供选择. See them in the docs here.
相关文章
相关标签/搜索