PFUser查询 - 警告:正在主线程上执行长时间运行的操作 - iOS

时间:2014-10-23 09:50:08

标签: ios parse-platform pfquery pfuser

我目前正在尝试从用户名数组中填充表格。

为了检索用户名,我使用PFQuery,如解析文档中所述:

PFQuery *query = [PFUser query];
NSArray *users = [query findObjects];

此代码在技术上有效。但是,我收到了这个警告:

Warning: A long-running operation is being executed on the main thread.

我尝试使用 findObjectsInBackgroundWithBloc 来检索用户名列表。但是,不会检索任何数据。我的桌子是空的。

Parse文档解释了查询用户是一个单独的概念,不同于查询普通对象,因此我的代码就在上面。此代码直接来自Parse文档。

有人能指出我正确的方向吗?

谢谢, 英里

1 个答案:

答案 0 :(得分:1)

您的查询花费了太多时间来返回数据,这就是您收到此警告的原因

您可以像这样使用findObjectsInBackgroundWithBlock:

PFQuery *query = [PFUser query];
NSMutableArray *users;
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
if (!error) {
    users = [[NSMutableArray alloc]initWithArray:objects];
    [tableView reloadData];
}
}];