2014-05-17 4 views
12

아래의 오류 보고서를 받았지만 발생하는 이유와 해결 방법을 알지 못했습니다. 다음과 같이__pthread_kill에 충돌이 발생했습니다.

SIGABRT ABORT는 0x000000019aa3258c에서

__pthread_kill

Thread : Crashed: com.apple.main-thread 
0 libsystem_kernel.dylib   0x000000019aa3258c __pthread_kill + 8 
1 libsystem_pthread.dylib  0x000000019aab516c pthread_kill + 104 
2 libsystem_c.dylib    0x000000019a9c6808 abort + 112 
3 libc++abi.dylib    0x0000000199bec994 __cxa_bad_cast 
4 libc++abi.dylib    0x0000000199c07184 std::__terminate(void (*)()) + 44 
5 libc++abi.dylib    0x0000000199c06d3c __cxa_rethrow + 144 
6 libobjc.A.dylib    0x000000019a3443a8 objc_exception_rethrow + 44 
7 CoreFoundation     0x000000018dd3d74c CFRunLoopRunSpecific + 576 
8 GraphicsServices    0x0000000193a21c0c GSEventRunModal + 168 
9 UIKit       0x0000000190e6efdc UIApplicationMain + 1156 
10 *************     0x00000001000a5c80 main (main.m:17) 
11 libdyld.dylib     0x000000019a937aa0 start + 4 
+2

Objective C 예외가 발생했습니다. 당신은 앱이 그것을 잡아 내지 못하기 때문에 OS가 앱을 종료하고 있습니다. Objective-C 예외 중단 점을 켜고 디버거에서 발생 된 예외를 깨는 것으로 시작할 수 있습니다. 그런 다음 앱을 실행하고 다시 실행하십시오. – user1118321

+0

pthread_kill은 처리되지 않은 예외의 원인이며 원인이 아니라고 생각합니다. user1118321이 말했듯이, 예외 중단 점을 설정하여이 문제의 원인을 찾는 것이 매우 쉽습니다. – sudo

+0

@ user1118321 어떻게 다시 만들지 모르겠다면 어떤 생각을 잡을 수 있습니까? – daidai

답변

8

libsystem_kernel.dylib, 충돌이 발생하는 위치를 쉽게 볼 수 있도록 당신의 main.m 파일을 변경하려면 :

int main(int argc, char* argv[]) 
{ 
    @autoreleasepool 
    { 
     int returnValue; 
     @try 
     { 
      returnValue = UIApplicationMain(argc, argv, nil, 
       NSStringFromClass([MyAppDelegate class])); 
     } 
     @catch (NSException* exception) 
     { 
      LogError(@"Uncaught exception: %@, %@", [exception description], 
       [exception callStackSymbols]); 
      @throw exception; 
     } 
     return returnValue; 
    } 
} 

. . . 또는 다른 사람들이 제안한 것처럼 예외 중단 점을 설정하십시오.

"야생에서"충돌이 발생하는 경우 충돌 로그를 다시 심벌링해야합니다. Hockey 또는 Test Flight와 같은 서비스는 사용자를 대신하여 수행하거나 this process을 수동으로 수행 할 수 있습니다.

관련 문제