- 最近碰到了一個(gè)該類型崩潰的問題,崩潰堆棧如下:

崩潰堆棧.png
網(wǎng)上查了下該類型為:試圖訪問未分配給自己的內(nèi)存, 或試圖往沒有寫權(quán)限的內(nèi)存地址寫數(shù)據(jù).(http://www.iosxxx.com/blog/2015-08-29-iosyi-chang-bu-huo.html
)試著看了下堆棧,猜測(cè)崩潰原因是網(wǎng)絡(luò)請(qǐng)求發(fā)出后,頁(yè)面回退到上一級(jí)銷毀,所以當(dāng)網(wǎng)絡(luò)請(qǐng)求block任務(wù)回來后,訪問了頁(yè)面的某個(gè)變量(無效內(nèi)存)導(dǎo)致崩潰;
按照上面的思路,把手機(jī)網(wǎng)絡(luò)調(diào)成very bad network模式,進(jìn)入頁(yè)面觸發(fā)網(wǎng)絡(luò)請(qǐng)求,再回退頁(yè)面,等待網(wǎng)絡(luò)請(qǐng)求返回,APP如期崩潰;XCode精準(zhǔn)的斷在如下:

e0bdb1f8f1afc25f345d055aec28ef1f.png
- 使用->形式訪問成員變量,導(dǎo)致崩潰;頁(yè)面回退后,self釋放掉了,不能使用指針的形式訪問其成員變量;