Я получаю ошибку сегментации (Address not found
). Результат, который я получаю, выглядит примерно так:
#3 Object "/some/dir/bin/myProject", at 0x415526, in
#2 Object "/some/dir/bin/myProject", at 0x40d3f9, in
#1 Object "/some/dir/bin/myProject", at 0x409b1a, in
#0 Object "/lib64/libpthread.so.0", at 0x7f9a82a78cd0, in pthread_mutex_lock
Я хотел бы знать, какой команде переводятся позиции в myProject.cpp
. Как я могу это сделать?
Причина, по которой я не проверяю это с помощью gdb
, заключается в том, что эта ошибка вызвана тем, как несколько потоков обмениваются данными, а вмешательство человека вводит так много времени ожидания, что эта ошибка не возникает. Ошибка также sporadi c ...
Дополнительный вопрос:
Насколько я понимаю, ошибка Address not found
заключается в том, что это, вероятно, вызвано разыменованием nullprt или попыткой доступа к контейнер в неправильном месте. Вы согласны?
РЕДАКТИРОВАТЬ
Спасибо за предложение отладки файлов дампа ядра. Проблема заключается в следующем: при возникновении этой ошибки программа не обрабатывает sh! Ошибка (или аналогичная) выводится на консоль, и программа зависает (многопоточность снова ...). Он не заканчивается, поэтому я предполагаю, что нет файлов дампа (поправьте меня, если я ошибаюсь!). Я не смог найти ни одного ...