Юзаю SuSe 9.1. Пишу прогу с использованием pthreds. Все работает просто замечательно пока не начну дебажить тред, а именно при срабатывании бряка в треде дебагер вешается . Как это лечится???
Классный совет!!!! Да только я знаю под Линухом один дебагер - gdb. А все остальные (DDD дебагер интегрированный в KDevelop), являются по сути графическими оболочками для него.
phreAds - это интерфейс, а не библиотека.
Чтобы о чем-то говорить было бы не плохо знать что за ядро, библиотека нитей, версия gdb. В чем проявляется "зависание" gdb (состояние gdb).
Если ядро старое и программа умудряется валить на экран из неосновных нитей, то gdb вместе с нитями может просто получать SIGTTOU(лечится снятиям TOSTOP из флажков терминала)...
Лично я рекомендую TotalView (http://www.etnus.com) - обалденная штука,
кряк правда я задолбаялся искать, но можно периодически с сайта выписывать ключик на пару недель работы - примерно как с vmware.
Судя по всему трабл у меня в том, что нити на том ядре шо у меня реализуются как LWP. Дебагер с одной стороны про LWP знает, есть у него какойто модуль для них, выкидывет кучу сообщений типа LWР тред создан, прибит и т д. При срабатывании бряка матерится на то, что невозможно получить из контекста процесса его регистры. Есть мысль создавать замороженый тред и аттачится к нему дебагером, как к процессу. Но хочется удобства.