Pyringe是一個python調(diào)試器,它可以附加到正在運(yùn)行的進(jìn)程,檢查它們的狀態(tài),甚至在運(yùn)行時注入python代碼。有了pyringe,你可以列出線程,得到tracebacks,檢查函數(shù)的locals/globals/builtins,所有這些都無需你在編寫程序時準(zhǔn)備。 Pyringe內(nèi)部使用了gdb來完成一些重要功能,因此你需要有一個最近編譯的gdb(7.4版本以上,并且編譯時需要–with-python參數(shù))。 為什么PDB(Python自帶的調(diào)試器)不適用?PDB非常棒,但是在一些情況下并不適用。 比如當(dāng)Python自己崩潰,在一些C擴(kuò)展上卡住了,或者你想在程序運(yùn)行時檢查數(shù)據(jù),在以上情況下,PDB(和其他所有在解釋器中運(yùn)行的調(diào)試器)幾乎無用,沒有pyringe你只能使用print語句來調(diào)試。Pyringe處理這些情況是相當(dāng)方便的。 github主頁:https://github.com/google/pyringe (非 Google 官方項目,作者在Google的個人項目) |
|