2011-03-28 2 views
10

파이썬 내 메시징 프레임 워크에서 일부 성능 테스트를 수행하고 있으며 코드 자체가 올바르게 정리되고 있는지 확인하려고합니다.Python : 성능 테스트, 정리 보장

프로세스가 소유 한 스레드의 현재 수를 모니터링하는 방법이 있습니까? 스레드를 유출하고 있는지 확인하는 더 좋은 방법이 있습니까?


내가 답을 찾고 있는지 분명히하기 위해. 프로세스가 살아있는 스레드의 수를 모니터 할 수있는 스크립트 및/또는 프로그램이 필요합니다.

답변

5

이 기능은 당신을 말할 것이다 파이썬 제공 기타 통계 뷰어를 사용하여 그래프를

gprof2dot -f pstats output.pstats | dot -Tpng -o output.png 

를 생성하는 gprof2dot를 사용, 통계 파일을 생성합니다 : threading.activeCount(). threading.enumerate() 함수를 사용하여 이러한 스레드를 열거 할 수도 있습니다.

+0

흥미 롭다. 나는 이것을 지금 시험해 보겠다. – Nix

+0

자세한 답변을 더 해주는 것이 좋겠지 만 이것을 활용할 수있었습니다. – Nix

+0

다행이라고 생각하면 도움이되었습니다. 나는 대답에 조금 더 자세하게 추가했다. 그러나 그것은 매우 직설적이다. 드문 스레드 사용자로서 나 자신이 최종 솔루션을 공유한다면 다른 사람들에게 도움이 될 수 있습니다. – Noah

5

사용 python profiler 다음 당신이 많은 스레드가 현재 살아 방법

+0

파이썬 프로파일 러에서 어떤 통계가 스레드 수를 추적합니까? – Nix