2009-12-10 2 views
1

나는이처럼 보이는 IBAction를이 :iPhone SDK - 비동기 동작?

self.title = @"Logging in ..."; 
[MyClass myLongRunningOperation]; 

내 문제는 장기 실행 작업이 완료 될 때까지 뷰 컨트롤러 제목이 업데이트되지 않는다는 것입니다. 장기간 실행되는 작업이 즉시 실행되는 동안 대기열에 저장되는 것처럼 보입니다.

나는 plattform에 아주 익숙하다. 그래서 나의 무지를 여기에서 용서해라.

감사합니다, - 펠릭스

+0

그게 내 질문에 얼마나 많은 대답을 수락합니까? 응답이 사소한 경우에는 대개 여기에 물건을 묻지 않습니다. 이것은 꽤 큰 Obj C 멍청하다. –

+0

비열함은 당신이 물어 본 질문을 되돌아보고 정답을 받아 들일 것을 제안합니다. – Andiih

+0

그들 중 일부는 오늘 현재 정답이 없습니다. 예를 들어 내 Gmail/ffmpeg 질문을 참조하십시오. –

답변

3

당신은 UI 스레드를 차단하고 있습니다. 사용을 고려하십시오

[self performSelectorOnBackgroundThread:@selector(doLongRunningOperation) withObject:nil]; 

아마도 어느 시점에서 Threading Programming Guide을 읽고 싶을 것입니다.

+0

또한 http://developer.apple.com/cocoa/managingconcurrency.html (스레드를 직접 처리하기보다는 NSOperation을 사용하여 동시성을 관리하는 방법에 대한 설명) – Malaxeur

+0

감사합니다. 확실히 스레딩 가이드를 살펴볼 것입니다! –