我正在使用'malloc_error _break'來解決雙重空閒錯誤。從iphone上的內存地址接收對象
堆棧跟蹤不會引導我到特定的行或對象(僅限於彙編代碼)。
我所看到的是對象地址:
...的malloc:***錯誤對象0xfa1340:雙免費
我怎樣才能找到哪個對象這個地址代表? (0xfa1340)
(我試圖找到它在「ObjectAlloc」工具 - 但不能))。
謝謝!
我正在使用'malloc_error _break'來解決雙重空閒錯誤。從iphone上的內存地址接收對象
堆棧跟蹤不會引導我到特定的行或對象(僅限於彙編代碼)。
我所看到的是對象地址:
...的malloc:***錯誤對象0xfa1340:雙免費
我怎樣才能找到哪個對象這個地址代表? (0xfa1340)
(我試圖找到它在「ObjectAlloc」工具 - 但不能))。
謝謝!
你想變成n個殭屍。這樣做會導致已釋放的對象不被釋放,但它們會被混入殭屍對象中,這樣您就可以看到收到的消息。
您可以通過將環境變量NSZombieEnabled設置爲YES來關閉它。信息結帳this technote。
讓我知道是否有更簡單的方法。
我這樣做的方式是:Product-> Profile。這將打開儀器。我選擇了殭屍。然後,當應用程序崩潰時,我點擊Statistics,選擇Objects List,然後點擊十六進制地址旁邊的小箭頭。它會顯示它代表的對象。