2012-07-27 2 views
1

UIDocument 하위 클래스가있는 응용 프로그램이 있습니다. 그러나 문제는 가끔씩 closeWithCompletionHandler 메서드가 너무 오래 작동한다는 것입니다. 나는 심지어 끝날 때까지 기다릴 수 없다. 너무 많은 시간이 걸린다. 것은 내가 - (id)contentsForType:(NSString *)typeName error:(NSError **)outError 메서드에 중단 점을 넣을 때 모든 것이 잘 동작합니다. 그래서 문제는 그러한 효과를 일으킬 수있는 것입니까?UIDocument가 느리게 닫습니다.

감사합니다.

+1

이 코드가 주 스레드에서 실행 중입니까? 이 경우 디스패치 대기열을 사용하여 백그라운드 스레드에서 실행 해보십시오. – Pripyat

+1

감사합니다. 작동합니다! 그러나 그 이유는 무엇입니까? 내가 알고 있듯이 가까운 방법은 어쨌든 백그라운드에서 작동합니다. – Riddick

답변

1

이 코드가 주 스레드에서 실행되고 있습니까? 이 경우 디스패치 대기열을 사용하여 백그라운드 스레드에서 실행 해보십시오.

주 스레드가 UI 그리기에도 영향을 주므로 주 스레드가 할 일이 많을 때 앱이 멈추는 이유에 유의하십시오. 따라서 항상 더 큰 작업을 백그라운드 스레드에 넣는 것이 좋습니다.

관련 문제