Что это означает, когда он дает обратную трассировку со следующим выходом?
#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, ошибка сегментации. Мое приложение представляет собой многопоточную программу FastCGI С++, запущенную на FreeBSD 6.3, используя pthread в качестве библиотеки потоков.
Он был скомпилирован с -g, и все таблицы символов для моего источника загружены, согласно источникам информации.
Как ясно, ни один из моих фактических кодов не появляется в трассировке, но вместо этого ошибка возникает из стандартных библиотек pthread. В частности, что такое??()????
EDIT: в конечном итоге отследил сбой до стандартного недопустимого доступа к памяти в моем основном коде. Не объясняет, почему трассировка стека была повреждена, но вопрос на другой день:)