运行Parse getDataInBackgroundWithBlock:progressBlock:与使用GCD创建新线程相同吗?

时间:2014-02-15 21:37:35

标签: ios objective-c grand-central-dispatch parse-platform

我正在尝试提高我的UICollectionView加载时间的性能。我使用Parse来存储我的所有数据,我的问题是我是否应该考虑将GCD与Parse结合使用?

目前,我正在使用以下方式加载所有图片:

getDataInBackgroundWithBlock:progressBlock:

但是,我想知道我是否应该使用:

dispatch_queue_t myQueue = dispatch_queue_create("My Queue",NULL);
dispatch_async(myQueue, ^{
    // Perform long running process

    dispatch_async(dispatch_get_main_queue(), ^{
        // Update the UI

    });
});

您对此有何看法?

1 个答案:

答案 0 :(得分:1)

解析方法已在后台线程上运行。您需要注意的是您在完成块中所做的事情。

如果您在那里执行任何非常重要的操作,并且导致您的UI滞后,您可以在完成块中使用另一个执行额外处理并反馈给UI的线程。

如果只是您担心的加载时间,请查看本地缓存选项。 Parse有check the local cache first的选项。