12
如何解決KERN_PROTECTION_FAILURE和KERN_INVALID地址? 當我運行我的應用程序時,兩者似乎都發生在同一地點。如何解決KERN_PROTECTION_FAILURE和KERN_INVALID_ADDRESS?
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x6d783f44
Crashed Thread: 2
Thread 2 Crashed:
0 libobjc.A.dylib 0x34a80464 objc_msgSend + 16
1 Foundation 0x31171dda __+[__NSOperationInternal _observeValueForKeyPath:ofObject:changeKind:oldValue:newValue:indexes:context:]_block_invoke_7 + 10
2 libSystem.B.dylib 0x30dd9678 _dispatch_call_block_and_release + 12
3 libSystem.B.dylib 0x30dd9b98 _dispatch_worker_thread2 + 120
4 libSystem.B.dylib 0x30d7e24a _pthread_wqthread + 258
5 libSystem.B.dylib 0x30d76970 start_wqthread + 0
和:
Exception Type: EXC_BAD_ACCESS (SIGBUS)
Exception Codes: KERN_PROTECTION_FAILURE at 0x00000011
Crashed Thread: 7
Thread 7 Crashed:
0 libobjc.A.dylib 0x34a80464 objc_msgSend + 16
1 Foundation 0x31171dfc -[NSOperation completionBlock] + 16
2 Foundation 0x31171dda __+[__NSOperationInternal _observeValueForKeyPath:ofObject:changeKind:oldValue:newValue:indexes:context:]_block_invoke_7 + 10
3 libSystem.B.dylib 0x30dd9678 _dispatch_call_block_and_release + 12
4 libSystem.B.dylib 0x30dd9b98 _dispatch_worker_thread2 + 120
5 libSystem.B.dylib 0x30d7e24a _pthread_wqthread + 258
6 libSystem.B.dylib 0x30d76970 start_wqthread + 0
奇怪的是,它崩潰在iPad 1(的iOS 4.2.1),而不是在iPad 2(iOS版4.3.2)。 這可能是iPad本身或內存的問題嗎?或者它真的是我的代碼中的一個錯誤?如果是這樣,爲什麼我不能在iPad 2上重現它?
我正在調查這樣的崩潰。我有幾千用戶會在發佈後使用我的新版本,並且我只有4人在發佈時重複崩潰。 所有這些都在iOS 4.2.1上(現在比較少見 - 也許10%的用戶羣?),在您的示例中也是如此。你記得你的解決方案是什麼嗎? – 2012-02-03 15:29:02
我最近遇到了這個問題,這是最熱門的搜索結果,所以我在這裏提出這個問題,希望它能幫助別人像我一樣在這裏結束。 我有一個NSArray的對象。我迭代了for()循環中的每個對象,然後釋放該數組(應該釋放所有對象,在我的情況下,釋放它們)。當我釋放數組時,我遇到了這個錯誤。 原來,爲什麼我不止一次在數組中有同一個對象,一旦我確定每個對象只被添加到數組中一次,這個問題就消失了。希望能幫助別人! – Pedro 2012-08-09 00:54:13