記一次棧溢出異常問題的排查

剛修改的服務,推到開發環境之後,總是時不時的崩潰,但是不知道爲什麼。嘗試找到他的最後一次調用,也沒有復現。

沒有辦法,只能抓dump了。

開啓崩潰自動dump,網絡上很多,不贅述了。

拿到dump之後,首先看看是什麼類型的異常

如圖所示,是個棧溢出的異常。

打印一下堆棧,發現密密麻麻的全是這個代碼。

我們找到這個對象,發現裏邊有個隱式轉換的代碼有點問題。

隱式轉換的應該是將傳入的內容轉爲轉出的格式,結果在返回的時候,返回了傳入的類型,導致,他想要轉成目標類型的時候,又觸發了隱式轉換,然後就無限遞歸了。

最後排查項目中所有的類似代碼,發現只有這一處,沒有windbg基本上很難排查到具體原因。 windbg 牛B

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章