顯示調用析構函數被g++編譯器優化掉不執行

最近程序在linux下運行幾個小時後會出現崩潰,從coredump文件沒有查找出崩潰的原因,於是,編譯了一份debug版本的程序放在服務器上,卻發現運行了幾天都沒有崩潰。

後來通過日誌的方式查找bug,最後發現是在Release編譯的情況下,在程序中顯示調用類的析構函數語句被優化掉,不執行。導致對象池數據清空失敗。對象池的數據出現問題,導致程序崩潰。

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