Исключение SIGPIPE в проекте iOS с интегрированным API BUMP

Я испытываю SIGPIPE ошибка в моем проекте XCode. Эта ошибка была начата с одной недели назад. Если я прокомментировал этот вызов метода: [self configureBump]; все отлично работает Я интегрировал BUMP API в свой проект. Этот API работает до недели без проблем. Я не уверен в причине этой ошибки. Может ли кто-нибудь помочь мне решить эту ошибку? Некоторые из моих друзей также сообщили об этой ошибке.

Версия Xcode: 4.5 Версия iOS: iOS 6.0/iOS 5.0

Пожалуйста, смотрите ниже трассировки стека:

* thread #1: tid = 0x1c03, 0x95a887d2 libsystem_kernel.dylib`mach_msg_trap + 10, stop reason = signal SIGPIPE
    frame #0: 0x95a887d2 libsystem_kernel.dylib`mach_msg_trap + 10
    frame #1: 0x95a87cb0 libsystem_kernel.dylib`mach_msg + 68
    frame #2: 0x029ef13a CoreFoundation`__CFRunLoopServiceMachPort + 186
    frame #3: 0x02952580 CoreFoundation`__CFRunLoopRun + 1312
    frame #4: 0x02951db4 CoreFoundation`CFRunLoopRunSpecific + 212
    frame #5: 0x02951ccb CoreFoundation`CFRunLoopRunInMode + 123
    frame #6: 0x03093879 GraphicsServices`GSEventRunModal + 207
    frame #7: 0x0309393e GraphicsServices`GSEventRun + 114
    frame #8: 0x017a0a9b UIKit`UIApplicationMain + 1175
    frame #9: 0x00002dd7 iCard`main + 199 at main.m:17
    frame #10: 0x00002185 iCard`start + 53

1 ответ

Есть вероятность, что SIGPIPE быть сброшенным по истечении времени ожидания сокета или отсутствия / потери соединения внутри этой библиотеки. Там может быть какой-то сбой сервера на их стороне или что-то.

Вы можете обойти, игнорируя SIGPIPE с:

signal(SIGPIPE, SIG_IGN); 

или же

signal(SIGPIPE, SO_NOSIGPIPE);

Проверьте эту ссылку для деталей.

С другой стороны, вы можете продолжить отладку, установив функцию обработчика с помощью

signal(SIGPIPE, yourHandlerFunc);

и проверка состояния сокетов /ivars/etc в нем.

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