Сбой SIGABRT в __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__

У меня есть журнал аварий SIGABRT, который мне незнаком. Похоже, это вызывает исключение, но я не вижу, где это исключение указано или его причина.

Это работает на iPad 2 / iOS 4.3 клиента.

Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0   libsystem_kernel.dylib          0x33ed3a1c __pthread_kill + 8
1   libsystem_c.dylib               0x354d83b4 pthread_kill + 52
2   libsystem_c.dylib               0x354d0bf8 abort + 72
3   libstdc++.6.dylib               0x33671a64 __gnu_cxx::__verbose_terminate_handler() + 376
4   libobjc.A.dylib                 0x3636906c _objc_terminate + 104
5   libstdc++.6.dylib               0x3366fe36 __cxxabiv1::__terminate(void (*)()) + 46
6   libstdc++.6.dylib               0x3366fe8a std::terminate() + 10
7   libstdc++.6.dylib               0x3366ff5a __cxa_throw + 78
8   libobjc.A.dylib                 0x36367c84 objc_exception_throw + 64
9   Foundation                      0x33f69924 __NSThreadPerformPerform + 648
10  CoreFoundation                  0x33e4ba72 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 6
11  CoreFoundation                  0x33e4d758 __CFRunLoopDoSources0 + 376
12  CoreFoundation                  0x33e4e4e4 __CFRunLoopRun + 224
13  CoreFoundation                  0x33ddeebc CFRunLoopRunSpecific + 224
14  CoreFoundation                  0x33ddedc4 CFRunLoopRunInMode + 52
15  GraphicsServices                0x33544418 GSEventRunModal + 108
16  GraphicsServices                0x335444c4 GSEventRun + 56
17  UIKit                           0x34416d62 -[UIApplication _run] + 398
18  UIKit                           0x34414800 UIApplicationMain + 664
19  MyApp                           0x000190c4 main (main.m:14)
20  MyApp                           0x0001907c 0x18000 + 4220

Где бы я начал искать, чтобы диагностировать это?

1 ответ

Решение

Программа должна распечатать информацию об исключении на консоль устройства (доступная для просмотра в органайзере Xcode при подключении устройства). Было бы очень, очень полезно увидеть эту информацию.

_NSThreadPerformPerform используется performSelector... семейство методов. Посмотрите, как вы используете эти методы. В частности, выясните, возможно ли, что вы просите объект выполнить селектор, который он не поддерживает. Это бросило бы исключение.

Другие вопросы по тегам