当它给出具有以下输出的回溯时,这意味着什么?
#0 0x00000008009c991c in pthread_testcancel () from /lib/libpthread.so.2
#1 0x00000008009b8120 in sigaction () from /lib/libpthread.so.2
#2 0x00000008009c211a in pthread_mutexattr_init () from /lib/libpthread.so.2
#3 0x0000000000000000 in ?? ()
程序因标准信号 11、分段错误而崩溃。我的应用程序是一个在 FreeBSD 6.3 上运行的多线程 FastCGI C++ 程序,使用 pthread 作为线程库。
根据信息来源,它已使用 -g 编译,并且我的源代码的所有符号表都已加载。
很明显,我的实际代码都没有出现在跟踪中,而是错误似乎来自标准 pthread 库。特别是,什么是??()????
编辑:最终在我的主代码中将崩溃追踪到标准的无效内存访问。没有解释为什么堆栈跟踪已损坏,但这是另一天的问题:)