2014-10-23 2 views
1

현재 사용자 이름 배열에서 테이블을 채우려고합니다.PFUser 쿼리 - 경고 : 메인 스레드에서 장기 실행 작업이 실행 중입니다. - iOS

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

이 코드는 기술적으로 작동 : 구문 분석 문서에 설명 된대로

는 사용자 이름을 검색하려면, I는 PFQuery를 사용합니다. 나는 사용자 이름의 목록을 검색하기 위해 findObjectsInBackgroundWithBloc를 사용하여 시도

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

: 그러나, 나는이 경고를 얻을. 그러나 데이터는 검색되지 않습니다. 내 테이블이 비어 있습니다.

구문 분석 설명서에서는 쿼리하는 사용자가 일반 개체를 쿼리하는 것과는 다른 개념이므로 위의 코드를 따릅니다. 이 코드는 Parse 문서에서 직접 가져온 것입니다.

누구나 올바른 방향으로 나를 가리킬 수 있습니까?

감사합니다, 마일

답변

1

귀하의 질문은 당신이 같은 findObjectsInBackgroundWithBlock:을 사용할 수 있습니다

이 경고를 얻고있는 이유 데이터를 반환하는 너무 많은 시간을하고있다.

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