2010-12-15 5 views
1

Можно создать дубликат:
General strategy to resolve Java memory leak?как исправить утечку памяти?

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

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

ответ

2

Профайлеров, как правило, полезны в поиске утечек памяти в сложных программах. Но если данная программа невелика, вы можете попытаться найти утечки памяти, внимательно прочитав исходный код.

Подумайте следующие вопросы, пока вы читаете исходный код:

  1. Какие действия ваша программа делает несколько раз? Какими объектами являются , созданные во время этих действий?
  2. Какой из создаваемых объектов необходим после завершения операции ?
  3. Какие объекты создаются один раз (например, при запуске программы ) и остаются в памяти до конца?
  4. Может ли какой-либо из объектов, указанных в предыдущих шагах, достижим из объектов, указанных в шаге 3. Если вы обнаружите, что некоторые объекты, которые могут быть отброшены, доступны из объектов с шага 3, подумайте о том, как вы можете разбить эту достижимость.
Смежные вопросы