有一個C#程序很少掛起。該程序在遠程機器上執行並且不能啓動調試器。運行外部分析器更加實際,但也存在巨大的困難。如何確定程序掛起點而不使用分析器或調試器?程序掛點標識
選項「FS上的詳細記錄」很不適合。該程序包含大約2萬行代碼,並且不經常掛起。
我試過Process Explorer,但它的工作原理很奇怪(或者我還沒有理解它)。如果你已經設法「捕捉」線程進入無限循環的時刻,那麼可以在那一刻看到棧。但是這個線程很快就消失了(無論是PE還是真的被環境所殺)。
可以接受創建另一個應用程序application-monitor的選項。如果您可以說如何創建主進程的轉儲或獲取有關主進程的線程的信息,那就太好了。如果你有一些現成的工具,它會更好。
任何條目採取應用程序事件日誌查看器
圖片? –
它可能是其他軟件(如數據庫轉儲或預定服務)造成這種情況嗎? – NoChance
@ Pierre-LucPineault,非常感謝。我檢查了標準的Windows應用程序事件日誌,並在那裏找到了關於這些錯誤的條目。我知道確切的掛起時間,所以找出我的應用程序的錯誤並不是問題。歡迎您撰寫回答以獲取carma) –