私のiPhoneアプリには、リリースしたAVAudioPlayerのインスタンスがあります(そのため、代わりに別のURLで別のインスタンスを初期化できます)。通常、これは正常に機能しますが、メインスレッドでデッドロックが発生することがあります。
Thread 1, Queue : com.apple.main-thread
#0 0x357e00d8 in __psynch_mutexwait ()
#1 0x3497d67a in pthread_mutex_lock ()
#2 0x359997a6 in -[AVAudioPlayer privCommonCleanup] ()
#3 0x35999bb6 in -[AVAudioPlayer dealloc] ()
#4 0x3338a174 in _objc_rootRelease ()
アプリは停止し、入力を受け入れません。クラッシュも何もありません、それはただ止まります。
アプリ内の他のスレッドとは相互作用していないようですが、完全を期すために、次のようになっています。
Thread 2, Queue : com.apple.libdispatch-manager
#0 0x357d03a8 in kevent ()
#1 0x33b03eaa in _dispatch_mgr_invoke ()
#2 0x33b03bc8 in _dispatch_mgr_thread ()
Thread 3, Queue : (null)
#0 0x357e0cd4 in __workq_kernreturn ()
#1 0x34983f3c in _pthread_wqthread ()
#2 0x34983cd0 in start_wqthread ()
Thread 4 WebThread, Queue : (null)
#0 0x357d0004 in mach_msg_trap ()
#1 0x357d0200 in mach_msg ()
#2 0x3573e3f2 in __CFRunLoopServiceMachPort ()
#3 0x3573d12a in __CFRunLoopRun ()
#4 0x356c04a4 in CFRunLoopRunSpecific ()
#5 0x356c036c in CFRunLoopRunInMode ()
#6 0x37406ca2 in _ZL12RunWebThreadPv ()
#7 0x34989734 in _pthread_start ()
#8 0x349895f0 in thread_start ()
Thread 5, Queue : (null)
#0 0x357e0cd4 in __workq_kernreturn ()
#1 0x34983f3c in _pthread_wqthread ()
#2 0x34983cd0 in start_wqthread ()
Thread 6 AQClient, Queue : (null)
#0 0x357d0004 in mach_msg_trap ()
#1 0x357d0200 in mach_msg ()
#2 0x3573e3f2 in __CFRunLoopServiceMachPort ()
#3 0x3573d12a in __CFRunLoopRun ()
#4 0x356c04a4 in CFRunLoopRunSpecific ()
#5 0x356c036c in CFRunLoopRunInMode ()
#6 0x34e2cb2e in GenericRunLoopThread::Entry(void*) ()
#7 0x34db3ca2 in CAPThread::Entry(CAPThread*) ()
#8 0x34989734 in _pthread_start ()
#9 0x349895f0 in thread_start ()
Thread 7, Queue : (null)
#0 0x357d0004 in mach_msg_trap ()
#1 0x357d0200 in mach_msg ()
#2 0x3573e3f2 in __CFRunLoopServiceMachPort ()
#3 0x3573d12a in __CFRunLoopRun ()
#4 0x356c04a4 in CFRunLoopRunSpecific ()
#5 0x356c036c in CFRunLoopRunInMode ()
#6 0x34af9b74 in -[NSRunLoop(NSRunLoop) runMode:beforeDate:] ()
#7 0x34b13522 in -[NSRunLoop(NSRunLoop) run] ()
#8 0x000c83fe in +[AFURLConnectionOperation networkRequestThreadEntryPoint:] at /Users/hiltonc/Documents/Code/LDSMobileApps/LDSScriptureHeroes/External/LDSMobileAccount/External/AFNetworking/AFNetworking/AFURLConnectionOperation.m:151
#9 0x34b05a80 in -[NSThread main] ()
Thread 8 com.apple.NSURLConnectionLoader, Queue : (null)
#0 0x357d0004 in mach_msg_trap ()
#1 0x357d0200 in mach_msg ()
#2 0x3573e3f2 in __CFRunLoopServiceMachPort ()
#3 0x3573d12a in __CFRunLoopRun ()
#4 0x356c04a4 in CFRunLoopRunSpecific ()
#5 0x356c036c in CFRunLoopRunInMode ()
#6 0x34b05bb8 in +[NSURLConnection(Loader) _resourceLoadLoop:] ()
#7 0x34b05a80 in -[NSThread main] ()
Thread 12 com.apple.CFSocket.private, Queue : (null)
#0 0x357e0570 in select$DARWIN_EXTSN ()
#1 0x35742640 in __CFSocketManager ()
#2 0x34989734 in _pthread_start ()
#3 0x349895f0 in thread_start ()
この問題の根底に到達する方法が本当にわかりません。何か案は?