遇到信号 SIGABRT 错误

Posted

技术标签:

【中文标题】遇到信号 SIGABRT 错误【英文标题】:Stuck with a signal SIGABRT error 【发布时间】:2014-02-07 08:42:48 【问题描述】:

我在 Xcode 5 测试版 5 上运行我的应用程序时遇到此错误。刚接触编程场景并寻求一些指导。任何帮助表示赞赏。

(lldb) bt
* thread #1: tid = 0x55d8, 0x38c9b1f0 libsystem_kernel.dylib`__pthread_kill + 8, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
    frame #0: 0x38c9b1f0 libsystem_kernel.dylib`__pthread_kill + 8
    frame #1: 0x38d037b6 libsystem_pthread.dylib`pthread_kill + 58
    frame #2: 0x38c4bff8 libsystem_c.dylib`abort + 76
    frame #3: 0x3807e98e libc++abi.dylib`abort_message + 74
    frame #4: 0x380976e6 libc++abi.dylib`default_terminate_handler() + 254
    frame #5: 0x386caf7c libobjc.A.dylib`_objc_terminate() + 192
    frame #6: 0x380951b2 libc++abi.dylib`std::__terminate(void (*)()) + 78
    frame #7: 0x38094d16 libc++abi.dylib`__cxa_rethrow + 102
    frame #8: 0x386cae2e libobjc.A.dylib`objc_exception_rethrow + 42
    frame #9: 0x2dc8f81e CoreFoundation`CFRunLoopRunSpecific + 642
    frame #10: 0x2dc8f58a CoreFoundation`CFRunLoopRunInMode + 106
    frame #11: 0x3077a43a UIKit`-[UIApplication _run] + 762
    frame #12: 0x307756d8 UIKit`UIApplicationMain + 1136
  * frame #13: 0x00058e80 MedicalCodes`main(argc=1, argv=0x27db1cfc) + 116 at main.m:16
(lldb) 

这是我通过使用断点得到的错误。

if ([[segue identifier] isEqualToString:@"ShowDetails"]) DetailViewController *detailviewcontroller = [segue destinationViewController];

    NSIndexPath *myIndexPath = [self.tableView indexPathForSelectedRow];

    int row = [myIndexPath row];
    detailviewcontroller.DetailModal = @[_Title[row], _Description[row]]; <-- its on this line of code right here.

说发送到实例 0x17e6a180 的选择器无法识别 有什么帮助吗?

【问题讨论】:

当此错误发生时,您不能将其指向应用程序中的特定代码区域吗?还是即将推出? SIGABRT 一般表示程序抛出了异常。您能否提供一些额外的信息,例如一些代码块等。 使用断点查找实际错误并发布到您的问题 【参考方案1】:

添加异常断点,然后运行项目。在大多数情况下,异常断点会在导致问题的代码行处停止。

您也可以从调试 > 断点 > 创建异常断点...

【讨论】:

【参考方案2】:

使用NSZombieEnabled = YES;

这可能会给你一个准确的错误报告

【讨论】:

在哪里这样做?

以上是关于遇到信号 SIGABRT 错误的主要内容,如果未能解决你的问题,请参考以下文章

“线程 1:信号 SIGABRT”错误与 JSON 序列化

Swift 信号 SIGABRT 错误

线程 1:信号 SIGABRT,无法识别的选择器发送到实例

线程 1:信号 SIGABRT 错误应用程序崩溃

XCode 错误线程 1:信号 SIGABRT

获取错误(断点)“线程 1:信号 SIGABRT”