1、Exception Type
1)EXC_BAD_ACCESS
此類型的Excpetion是我們最長(zhǎng)碰到的Crash,通常用于訪問(wèn)了不改訪問(wèn)的內(nèi)存導(dǎo)致。一般EXC_BAD_ACCESS后面的"()"還會(huì)帶有補(bǔ)充信息。
SIGSEGV: 通常由于重復(fù)釋放對(duì)象導(dǎo)致庄新,這種類型在切換了ARC以后應(yīng)該已經(jīng)很少見(jiàn)到了。
SIGABRT: 收到Abort信號(hào)退出,通常Foundation庫(kù)中的容器為了保護(hù)狀態(tài)正常會(huì)做一些檢測(cè)择诈,例如插入nil到數(shù)組中等會(huì)遇到此類錯(cuò)誤械蹋。
SEGV:(Segmentation Violation),代表無(wú)效內(nèi)存地址羞芍,比如空指針哗戈,未初始化指針,棧溢出等荷科;
SIGBUS:總線錯(cuò)誤唯咬,與 SIGSEGV 不同的是,SIGSEGV 訪問(wèn)的是無(wú)效地址畏浆,而 SIGBUS 訪問(wèn)的是有效地址胆胰,但總線訪問(wèn)異常(如地址對(duì)齊問(wèn)題, 它之所以稱為總線錯(cuò)誤是因?yàn)閷?duì)未對(duì)齊的內(nèi)存訪問(wèn)時(shí),被阻塞的組件就是地址總線)
SIGILL:嘗試執(zhí)行非法的指令,可能不被識(shí)別或者沒(méi)有權(quán)限
2)EXC_BAD_INSTRUCTION
此類異常通常由于線程執(zhí)行非法指令導(dǎo)致
3)EXC_ARITHMETIC
除零錯(cuò)誤會(huì)拋出此類異常
2刻获、Exception Code
0xbaaaaaad 此種類型的log意味著該Crash log并非一個(gè)真正的Crash蜀涨,它僅僅只是包含了整個(gè)系統(tǒng)某一時(shí)刻的運(yùn)行狀態(tài)。通承保可以通過(guò)同時(shí)按Home鍵和音量鍵勉盅,可能由于用戶不小心觸發(fā)
0xbad22222當(dāng)VOIP程序在后臺(tái)太過(guò)頻繁的激活時(shí),系統(tǒng)可能會(huì)終止此類程序
0x8badf00d這個(gè)前面已經(jīng)介紹了顶掉,程序啟動(dòng)或者恢復(fù)時(shí)間過(guò)長(zhǎng)被watch dog終止
0xc00010ff程序執(zhí)行大量耗費(fèi)CPU和GPU的運(yùn)算,導(dǎo)致設(shè)備過(guò)熱挑胸,觸發(fā)系統(tǒng)過(guò)熱保護(hù)被系統(tǒng)終止
0xdead10cc程序退到后臺(tái)時(shí)還占用系統(tǒng)資源痒筒,如通訊錄被系統(tǒng)終止
0xdeadfa11前面也提到過(guò),程序無(wú)響應(yīng)用戶強(qiáng)制關(guān)閉