Как я могу найти утечки памяти в своей программе Python? [дубликат]

Вы можете переключать оси, просто переключаясь, где вы используете x и y. Вы можете заполнить область «под» кривой, используя polygon. Вот простой пример с гауссовым распределением.

## Data
x = seq(-3.5,3.5,0.1)
y = dnorm(y)

## Plot
plot(y, x, type="l", xaxs="i", xlim=c(0,0.45))
polygon(y,x, col="gray")

Sideways plot

31
задан Community 23 May 2017 в 12:09
поделиться

2 ответа

Обычно отказ закрыть курсоры является одним из наиболее распространенных видов утечек памяти. Сборщик "мусора" не видит ресурсы MySQL, вовлеченные в курсор. MySQL не знает, что сторона Python была выпущена, если close() метод не называют явно.

Эмпирическое правило. Открытый, используйте и приблизьтесь курсоры столь короткий промежуток кода, как можно справиться.

16
ответ дан 27 November 2019 в 22:51
поделиться

Памятью Python управляет сборщик "мусора". В целом не должно быть проблемы с утечкой памяти (определенно не для Python2.5 и выше), если Вы, оказывается, не пишете дополнительные модули в C/C++. В этом случае Valgrind (Сообщение в блоге - http://bruynooghe.blogspot.com/2008/12/finding-memory-leaks-in-python.html ) мог бы быть полезным. Я нашел, что этот человек - http://mg.pov.lt/blog/hunting-python-memleaks использовал PDB и matplotlib для трассировки утечки памяти. Я надеюсь, что это помогает, у меня нет опыта при фиксации утечек памяти Python.

1
ответ дан 27 November 2019 в 22:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: