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