【问题标题】:Xcode Exit codes and signalsXcode 退出代码和信号
【发布时间】:2010-09-18 08:47:58
【问题描述】:

我环顾四周,从未找到完整的 Xcode 退出代码列表,尤其是在 iOS 上。这个问题:Debuging to simulator crashes with "exited with status 5" unless I have breakpoint 只是说我需要重新启动 xcode 以解决标记为“退出代码 5”的常见问题。还有很多其他类似的问题。解决方案通常有效,但我不明白它们是如何工作的。下次我遇到这些退出代码时,我想知道它们的含义,以便更好地了解如何防止它再次发生。

常见的 Xcode 信号和退出代码有哪些?

【问题讨论】:

  • 如果没问题,我将把问题改写为简单地询问信号列表。现在没有必要提及我的特殊问题......同样在我的辩护中,这个“重复的问题”仍然没有被接受的答案,因为我提到这不起作用所以我想通过获取退出代码 5 来解决我的问题意思。
  • 您应该进一步详细说明原始问题,而不是仅仅为了向人们寻求答案而打开新问题。只需给人们时间阅读、查找和适当回答
  • 好的,我已经改写了这个问题,希望人们能更清楚地理解,我认为这个问题实际上与退出代码 5 无关,而与信号是什么有关。通过此更改,我还将接受 Grady 的回答

标签: iphone xcode ios exit-code


【解决方案1】:

信号 0 和 1 非常标准,其他是在上下文中由用户定义的,在 osx 10.6 上:

man 信号给出:

 2     SIGINT       terminate process    interrupt program
 3     SIGQUIT      create core image    quit program
 4     SIGILL       create core image    illegal instruction
 5     SIGTRAP      create core image    trace trap
 6     SIGABRT      create core image    abort program (formerly SIGIOT)
 7     SIGEMT       create core image    emulate instruction executed
 8     SIGFPE       create core image    floating-point exception
 9     SIGKILL      terminate process    kill program
 10    SIGBUS       create core image    bus error
 11    SIGSEGV      create core image    segmentation violation
 12    SIGSYS       create core image    non-existent system call invoked
 13    SIGPIPE      terminate process    write on a pipe with no reader
 14    SIGALRM      terminate process    real-time timer expired
 15    SIGTERM      terminate process    software termination signal
 16    SIGURG       discard signal       urgent condition present on
                                         socket
 17    SIGSTOP      stop process         stop (cannot be caught or
                                         ignored)
 18    SIGTSTP      stop process         stop signal generated from
                                         keyboard
 19    SIGCONT      discard signal       continue after stop
 20    SIGCHLD      discard signal       child status has changed
 21    SIGTTIN      stop process         background read attempted from
                                         control terminal
 22    SIGTTOU      stop process         background write attempted to
                                         control terminal
 23    SIGIO        discard signal       I/O is possible on a descriptor
                                         (see fcntl(2))
 24    SIGXCPU      terminate process    cpu time limit exceeded (see
                                         setrlimit(2))
 25    SIGXFSZ      terminate process    file size limit exceeded (see
                                         setrlimit(2))
 26    SIGVTALRM    terminate process    virtual time alarm (see
                                         setitimer(2))
 27    SIGPROF      terminate process    profiling timer alarm (see
                                         setitimer(2))
 28    SIGWINCH     discard signal       Window size change
 29    SIGINFO      discard signal       status request from keyboard
 30    SIGUSR1      terminate process    User defined signal 1
 31    SIGUSR2      terminate process    User defined signal 2

【讨论】:

  • 是的,但是如果应用程序被信号杀死,他们可以将其用作退出代码,不知道 xcode 是否有,但我已经做到了。
  • SIGTRAP 不会杀死进程。
  • 异常类型:EXC_CRASH (SIGTRAP) 异常代码:0x0000000000000000, 0x0000000000000000
  • 这也可以解释为什么启用的调试器不会崩溃。
  • 呃,什么?这不是退出代码。那是个例外。在这种情况下,该进程甚至没有机会发出退出代码。
猜你喜欢
  • 2020-03-18
  • 2021-03-14
  • 1970-01-01
  • 1970-01-01
  • 2019-06-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-20
相关资源
最近更新 更多