Xcode에서 2 개의 스레드를 실행하는 방법을 찾고 싶습니다. 예. 업로드 파일 (크기는 3 ~ 4MB 정도로 큽니다)을 웹 사이트 에 업로드하면 사용자가이 업로드 파일을 사용하지 않고도 계속해서 다른 작업을 수행 할 수 있습니다.iPhone 앱이 다른 작업을 수행하는 동안 백그라운드에서 파일을 업로드하는 방법
상단 표시 줄에 네트워크 활동 아이콘을 표시 할 수 있지만 스레드 분리 방법을 알 수는 없습니다.
UIApplication* app = [UIApplication sharedApplication];
app.networkActivityIndicatorVisible = YES;
어떤 생각? 감사합니다
void dispatch_async ( dispatch_queue_t queue, dispatch_block_t 블록)를 사용하면 어떨까요? –
[GCD API] (https://developer.apple.com/library/mac/#documentation/Performance/Reference/GCD_libdispatch_Ref/Reference/reference.html)를 사용할 수 있지만 NSOperation을 사용하여 질문에 언급 한 작업 더 적절할 것입니다. 동시성 프로그래밍 [here] (https://developer.apple.com/library/mac/#documentation/General/Conceptual/ConcurrencyProgrammingGuide/Introduction/Introduction.html#//apple_ref/doc/uid/TP40008091)에 대한 자세한 정보를 찾을 수 있습니다.) – mijokaliger
"_WebThreadLockFromAnyThread (bool), 0x2f45b0 : 주 스레드 또는 웹 스레드가 아닌 스레드에서 웹 잠금 가져 오는 중 오류가 발생했습니다. 보조 스레드에서 UIKit 호출해야합니다." 코드를 사용하는 동안 UIStoryboard * mainStoryboard = [UIStoryboard storyboardWithName : kMAINSTORYBOARD 번들 : nil]; UIViewController * controller = (UIViewController *) [mainStoryboard instantiateViewControllerWithIdentifier : kMAINNAVIGATION]; controller.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; [self presentModalViewController : 컨트롤러 애니메이션 : 예]; –