Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Посоветуйте как найти баг в большом проекте


Автор: polakwilno 25.8.2007, 18:11
Добрый день,

Хотел спросить, как можно поумнее проследить за выполнением программы? У меня есть не маленькое  клиент-сервер приложение, и иногда оно подвисает. Почему незнаю. Пробовал запускать в дэбаг модэ (под eclipse), но никаких ошибок не получал. 

Может быть есть какието специальные инструменты для отладки мульти-потоковых ява приложений? Какие есть способы, чтоб на консоль явы вывелась хоть какаято ошибка? Мне теперь совсем не за что зацепится...

За ранее спасибо


Автор: shimopus 25.8.2007, 18:44
Если это приложение написано Вами или есть исходные коды, то можно вставить логирование. Во многих случаях с умом расставленные точки вывода логов помогают локализовать проблему.
Во-вторых, советую попробовать выяснить что послужило или в какой момент произошло подвисание, в момент какого действия.
Чаще всего в мультипоточных приложениях подвисание происходит из-за неверной работы с синхронизацией, неправильным ее использованием и работы вообще без нее. Именно в таких "узких" местах вставка точек логирования очень поможет.

Автор: olegrolik 25.8.2007, 19:31
Из собственного опыта:
Было работающее приложение. Из-за настроек JVM и кривости моих рук были разные проблемы. Искал я их с помощью логирования и изучения кода приложения. 
Вывод: чтобы искать баги, надо знать код. Конечно проблемы могут быть покруче, например, если неправильно реализован какой-нибудь паттерн (особенно если ты его не заешь). Меня пронесло smile

Автор: polakwilno 25.8.2007, 23:56
shimopus, olegrolik спасибо, буду пробовать через логи значит

Да, код мой. Только странно както, я взял специально написал кривое приложение, где 100 потоков несинхронно обращаются к textarea.setText(), приложение естественно подвисает, но никаких ошибок я не получаю :(

Когда была похожая проблема со SWING элементами, то на консоль выводилась ошибка, а тут глухо. Может у меня чегото с настройками, или это нормально, так и должно быть...?

Автор: lostinwired 26.8.2007, 00:53
Профайлер ?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)