每條線程都有唯一的一個(gè)與之對應(yīng)的RunLoop對象
RunLoop保存在一個(gè)全局的Dictionary里冲秽,線程作為key感猛,RunLoop作為value
線程剛創(chuàng)建時(shí)并沒有RunLoop對象,RunLoop會(huì)在第一次獲取它時(shí)創(chuàng)建
RunLoop會(huì)在線程結(jié)束時(shí)銷毀
主線程的RunLoop已經(jīng)自動(dòng)獲让涣(創(chuàng)建)铺厨,子線程默認(rèn)沒有開啟RunLoop
項(xiàng)目中可以用它來做:
控制線程生命周期(線程保活)
解決NSTimer在滑動(dòng)時(shí)停止工作的問題
監(jiān)控應(yīng)用卡頓
性能優(yōu)化
其內(nèi)部實(shí)現(xiàn)邏輯為