
從屏幕上點擊開始系統(tǒng)發(fā)生了什么?
調(diào)用了main函數(shù)之后,會調(diào)用UIApplicationMain,在內(nèi)部會啟動主線程的runloop,進(jìn)過一系列的處理runloop處于休眠狀態(tài)。如果此時點擊屏幕產(chǎn)生了mach-port,最終轉(zhuǎn)成source1事件,把主線程喚醒,運行處理。當(dāng)我們把程序殺死時,會觸發(fā)kCFRunloopExit通知,即將退出runloop,線程被銷毀。
Runloop作用
Runloop的作用是維持執(zhí)行不退出一般一個main函數(shù)執(zhí)行到末尾花括號就結(jié)束了 因為要保持app一直運行 系統(tǒng)主線程對應(yīng)的主運行循環(huán)是一直在的