Как-то память моей программы Python занимает все больше памяти, когда она запускается (колонка VIRT и RES) команды «top» продолжает расти.Ошибка памяти Python?
Однако я тщательно проверил свой код очень тщательно, и я уверен, что утечек памяти нет (не использовался словарь, нет глобальных переменных. Это просто основной метод, вызывающий метод sub для нескольких раз).
Я бесформенный в профиль мой использование памяти
from guppy import hpy;
heap = hpy();
.....
print heap.heap();
каждый раз, когда основной метод вызывает метод суб. Удивительно, но он всегда дает тот же результат. Но использование памяти просто продолжает расти.
Я задаюсь вопросом, не использовал ли я heapy right, или VIRT и RES в команде «top» действительно не отражают память, используемую моим кодом?
Или может ли кто-нибудь предоставить лучший способ отследить использование памяти в скрипте Python?
Большое спасибо!
Похоже, что подтема течет тогда. Предполагая, что у вас есть доступ к его коду, попробуйте [sys.getsizeof (object) или pysizer] (http://stackoverflow.com/questions/449560/how-do-determine-the-size-of-an-object -in-python) для измерения объектов внутри субметода. – smci