2011-03-28 45 views
10

我正在python中的消息框架上執行一些性能測試,我試圖確保代碼正確地清理後自己。Python:性能測試,確保清理

有沒有辦法監視進程擁有的當前線程數?有沒有更好的方法來判斷我是否漏線?


只是爲了確保我澄清我在尋找什麼作爲答案。我需要一個腳本和程序來監視進程已經存在的線程數量。

回答

5

此功能會告訴你許多線程如何目前還活着: threading.activeCount()。您還可以使用threading.enumerate()函數枚舉這些線程。

+0

有趣,我現在就試試看。 – Nix 2011-06-10 00:19:23

+0

給予更多詳細的答案會很好,但我能夠利用這一點。 – Nix 2011-06-15 13:18:39

+0

很高興這對你有幫助。我已經在我的答案中加入了更多細節,儘管它看起來非常簡單。作爲一名不常見的線程用戶,如果您分享了最終的解決方案,則可能對其他人有所幫助。 – Noah 2011-06-15 14:35:39

5

使用python profiler生成統計數據文件, 然後使用gprof2dot生成圖形

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

您可以使用規定的蟒蛇其他統計觀衆

+0

Python Profiler中的統計信息跟蹤線程數量? – Nix 2011-05-25 13:26:23