萬劍歸宗

RunLoop:

1、機制:通過observer去觀察處理(timer-source0-source1-休眠-喚醒-timer....) 
      source0(觸摸事件、performSelector)
      source1(基于port的線程之間事件消息)
2、Model: 5種Model(默認、UI正在改變時Track、App剛啟動第一次、系統(tǒng)的事件處理、Common)
3、注意事項: 
a.主線程默認開啟RunLoop, 子線程需要自己開啟run, RunLoop需要先添加item再開啟,不然開啟RunLoop,檢測沒有item自動退出
b.為了避免操作UI時,定時器不響應,Model應設置為Common.
c.避免正在操作UI時,子線程網(wǎng)絡請求返回數(shù)據(jù),主線程更新UI,導致用戶操作不順暢, 可
[self performSelectorOnMainThread:@selector(reloadData) withObject:nil waitUntilDone:NO modes:@[NSDefaultRunLoopMode]];
NSDefaultRunLoopMode只有在沒有UI操作時才會執(zhí)行線程
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容