저는 Objective-C를 처음 접했고 비 차단 방식으로 대기하는 방법을 알 수 없습니다. 비동기 적으로 채워지는 객체가 있는데 다른 메소드로 진행하기 전에 기다려야합니다. 지금은 절전 기능을 사용하고 있지만이 프로그램은 전체 응용 프로그램을 차단하고 myObject는로드되지 않습니다.Objective-C의 비 차단 대기 기능
while (!myObject)
{
sleep(1);
}
return myObject;
EDIT :이 코드 스 니펫은 myObject가로드되기 전에 호출 될 수있는 메서드에서 가져온 것입니다. 이 경우 실제로이 메서드에서 차단하려고하지만 내 코드는 myObject를 비롯한 모든 항목이로드되는 것을 차단합니다.
감사를했다, 나는이 질문을 발견하고 자신의 두 번째 코드를 사용하여 구현 : HTTP : //stackoverflow.com/questions/149646/best-way-to-make-nsrunloop-wait-for-a-flag-to-be-set –