파이썬 스크립트 하나에 메모리 누수가 있음을 깨달았습니다. 처음에는 약 25MB를 차지했고, 15 일 후에는 500MB 이상이었습니다.파이썬에서 사용 가능한 모든 튜플을 디버거에서 인쇄합니다.
내가 파이썬 안돼서으로 문제의 근본에 들어갈 수없는 여러 가지 방법을 다음과...
마지막으로, 나는이
objgraph.show_most_common_types(limit=20)
tuple 37674
function 9156
dict 3935
list 1646
wrapper_descriptor 1468
weakref 888
builtin_function_or_method 874
classobj 684
method_descriptor 551
type 533
instance 483
Kind 470
getset_descriptor 404
ImmNodeSet 362
module 342
IdentitySetMulti 333
PartRow 331
member_descriptor 264
cell 185
FontEntry 170
다음 내가 휴식을 설정할 수있어 점을 찍은 후 반복 할 때마다 ...
objgraph.show_growth()
tuple 37674 +10
계속하려면 가장 좋은 방법은 무엇입니까? 이 10 튜플이 추가 매번 나에게 몇 가지 단서를 줄 것이다됩니다 무엇을 -
(Pdb) c
(Pdb) objgraph.show_growth()
tuple 37684 +10
나는 모든 튜플, 크로스 체크를 인쇄 같아요? 친절하게 어떻게 할 지 알려주세요 ..
또는이 메모리 누수를 찾을 수있는 다른 방법이 있습니다. Python 2.4.3을 사용하고 있으며 다른 많은 제품 종속성 때문에 - 불행히도 업그레이드 할 수 없거나 업그레이드해서는 안됩니다.
매우 거대한 스크립트 (3 개 모듈 이상)이며 파이썬에 처음이므로 전체 스크립트를 살펴본 후에도 찾을 수 없습니다. 여전히 모든 튜플을 인쇄하는 방법을 찾고 있거나 적어도 세계적인 튜플 만 atleast 인쇄하고 있습니다 ...하지만 운은 아직 없습니다! – user379997