如何在Xcode4中設置malloc_error_break?此外,我似乎得到這個錯誤malloc: *** error for object 0x4d80814: incorrect checksum for freed object - object was probably modified after being freed.
在Xcode 4中設置malloc_error_break
有無論如何我可以檢查什麼對象0x4d80814是?它不會顯示在調試器的變量列表中。
如何在Xcode4中設置malloc_error_break?此外,我似乎得到這個錯誤malloc: *** error for object 0x4d80814: incorrect checksum for freed object - object was probably modified after being freed.
在Xcode 4中設置malloc_error_break
有無論如何我可以檢查什麼對象0x4d80814是?它不會顯示在調試器的變量列表中。
我認爲這是如何完成的。
通常它是由物體引起的創建爲尚不存在的其他對象的子對象(其spritenode存在之前創建即SKPhysicsBody)
在我的情況下沒有幫助 –
您能否提供給我更多此點的詳細信息:單擊下一個斷點按鈕(它看起來像|>)並位於底部面板上。它會帶你到導致錯誤的行。 我使用的是xcode 8,但我沒有找到|>這種符號 –
你也可以直接通過gdb命令窗口來完成。
break malloc_error_break
或LLDB:
breakpoint set -n malloc_error_break
爲了XCode中4打開調試命令窗口中,單擊右上角上方的「查看」中間的按鈕,然後單擊頂部中間的按鈕剛剛打開的底部調試窗格的右下角。另請參閱Input to console in Xcode 4
請注意,這是gdb,但默認的調試器通常是lldb,它具有不同的語法 – yairchu
它不會顯示在調試器中,因爲它已被釋放,並可能從Apple的代碼內部引用。我建議使用Analyzer來查找內存管理中的任何明顯不一致。 –
機會是你正在修改一個已經釋放的對象,'malloc'在一段時間後檢測到它。如果您對其進行配置並使用殭屍工具,則可能會指出錯誤的位置。 –