通過下面的異常類型惠赫,我們也可以大概判斷出是哪里出的問題,我覺得蠻好的故响,寫給自己,方便以后查問題颁独。
1彩届、Exception Type
1)EXC_BAD_ACCESS
EXC_BAD_ACCESS:此類型的Excpetion是我們最長碰到的Crash,通常用于訪問了不改訪問的內(nèi)存導(dǎo)致誓酒。一般EXC_BAD_ACCESS后面的"()"還會帶有補(bǔ)充信息樟蠕。
SIGSEGV: 通常由于重復(fù)釋放對象導(dǎo)致,這種類型在切換了ARC以后應(yīng)該已經(jīng)很少見到了靠柑。
SIGABRT:? 收到Abort信號退出寨辩,通常Foundation庫中的容器為了保護(hù)狀態(tài)正常會做一些檢測,例如插入nil到數(shù)組中等會遇到此類錯(cuò)誤歼冰。
SEGV:(Segmentation? Violation)靡狞,代表無效內(nèi)存地址,比如空指針隔嫡,未初始化指針甸怕,棧溢出等甘穿;
SIGBUS:總線錯(cuò)誤,與 SIGSEGV 不同的是梢杭,SIGSEGV 訪問的是無效地址温兼,而 SIGBUS 訪問的是有效地址,但總線訪問異常(如地址對齊問題)
SIGILL:嘗試執(zhí)行非法的指令武契,可能不被識別或者沒有權(quán)限
2)EXC_BAD_INSTRUCTION
此類異常通常由于線程執(zhí)行非法指令導(dǎo)致
3)EXC_ARITHMETIC
除零錯(cuò)誤會拋出此類異常
2募判、Exception Code
0xbaaaaaad? 此種類型的log意味著該Crash log并非一個(gè)真正的Crash,它僅僅只是包含了整個(gè)系統(tǒng)某一時(shí)刻的運(yùn)行狀態(tài)吝羞。通忱忌耍可以通過同時(shí)按Home鍵和音量鍵,可能由于用戶不小心觸發(fā)
0xbad22222? 當(dāng)VOIP程序在后臺太過頻繁的激活時(shí)钧排,系統(tǒng)可能會終止此類程序
0x8badf00d 程序啟動或者恢復(fù)時(shí)間過長被watch dog終止
0xc00010ff? 程序執(zhí)行大量耗費(fèi)CPU和GPU的運(yùn)算敦腔,導(dǎo)致設(shè)備過熱,觸發(fā)系統(tǒng)過熱保護(hù)被系統(tǒng)終止
0xdead10cc? 程序退到后臺時(shí)還占用系統(tǒng)資源恨溜,如通訊錄被系統(tǒng)終止
0xdeadfa11? 前面也提到過符衔,程序無響應(yīng)用戶強(qiáng)制關(guān)閉