我的应用程序有时会崩溃,但我找不到原因。我的应用程序是多线程(QThread)并使用多个QUdpSockets。我认为这是由于同时访问套接字而发生的,但我不知道何时何地。
核心文件中有bt的结果:
#0 0x414596e1 in ?? ()
#1 0x412d731b in pthread_kill (thread=1649, signo=6) at signals.c:69
#2 0x412d76a0 in __pthread_raise (sig=6) at signals.c:200
#3 0x41459395 in ?? ()
#4 0x00000006 in ?? ()
#5 0x41546ff4 in ?? ()
#6 0xbd5fd8bc in ?? ()
#7 0x4145a87d in ?? ()
#8 0x00000006 in ?? ()
#9 0x00000020 in ?? ()
#10 0x00000000 in ?? ()
Linux 上的信号 6 是
SIGABRT
- 事实上,它是通过 pthread_raise()
引发的,这似乎表明应用程序已直接调用 abort()
或失败的 assert()
。
回溯的缺失部分很可能位于 QT 库中,因此请尝试为所有这些安装调试符号。