我正在開發一個多線程應用程序,這是死鎖。如何用python調試死鎖?
我正在使用Visual C++ Express 2008來跟蹤程序。一旦發生死鎖,我只需暫停程序並追蹤。我發現當死鎖發生時,我的C++擴展中會有兩個線程叫做python。
所有的人都在Python代碼中使用Queue,所以我猜這個死鎖可能是由Queue造成的。但是,一旦擴展名進入python代碼,除了asm代碼和VC++調試器的二進制文件,我什麼也看不到。
我想知道有什麼方法可以在我暫停程序後轉儲python代碼的調用堆棧嗎?我怎麼知道線程中有什麼鎖造成了死鎖?
從C++程序調用Python代碼? – 2009-02-09 07:24:21
不,python程序導入了我寫的一些C++擴展。 – 2009-02-09 07:34:14