使用 Parse.com 获得警告

Posted

技术标签:

【中文标题】使用 Parse.com 获得警告【英文标题】:Getting Warning with Parse.com 【发布时间】:2014-10-08 00:58:38 【问题描述】:

我正在尝试通过 enumerateObjectsUsingBlock 访问 NSArray 槽上的每个项目,因为它让我可以使用快速枚举和评估索引。

当我使用 findObjectsInBackgroundWithBlock 时,

我收到警告:正在主服务器上执行长时间运行的操作 线。中断 warnBlockingOperationOnMainThread() 进行调试。

正如我认为在后台使用的那样不阻塞主线程。这是我的代码,我正在努力实现它,我有两个 UIImageView 容器,我从该查询的关系结果中提取图像。由于只有容器,我认为最好只评估 NSArray 的索引。

不知道如何解决这个警告。

谢谢

    [query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) 
        if (objects != 0) 
            [objects enumerateObjectsUsingBlock:^(PFUser *object, NSUInteger idx, BOOL *stop) 
                if (idx == 0) 
                    PFFile *userProfile = [object objectForKey:@"userPic"];
                    cell.promoter1.file = userProfile;
                    cell.promoter1.contentMode = UIViewContentModeScaleAspectFit;
                    [cell.promoter1 loadInBackground];                                                                                    
                    cell.promoter1Name.textAlignment = NSTextAlignmentCenter;
                    cell.promoter1Name.lineBreakMode = NSLineBreakByWordWrapping;
                
                if (idx == 1) 
                    PFFile *userProfile = [object objectForKey:@"userPic"];

                    cell.promoter2.file = userProfile;
                    cell.promoter2.contentMode = UIViewContentModeScaleAspectFit;
                    [cell.promoter2 loadInBackground];
                    NSAttributedString *promoter1Name;                                                                                  
                    cell.promoter2Name.textAlignment = NSTextAlignmentCenter;
                    *stop = YES;
                
            ];
        
    ];

【问题讨论】:

【参考方案1】:

对我的代码进行故障排除后,我意识到findObjectsInBackgroundWithBlock 不会导致此警告。

在我的代码的另一部分我有这个:

PFUser *user = [PFQuery getUserObjectWithId:@"ebwFrl8PcF"];    
[relation addObject:user];
[self.event saveInBackground];

哪个阻塞了主线程。

我很抱歉。

【讨论】:

以上是关于使用 Parse.com 获得警告的主要内容,如果未能解决你的问题,请参考以下文章

在我的应用程序中使用自定义 UICollectionViewCell 时如何停止内存警告

显示警告并且无法获得名册

获得警告标志:使用了 OMEGA13 但从未设置(将评估为其名称)

尝试使用router.history.goBack与react-router时获得警告

在 C 中获得“atoi”功能的警告

如果C代码比较不同的数据类型,如何获得警告?