編程最怕的就是有盲點,不確定,而runloop官網(wǎng)對其提及的又很少;那么看完這篇應(yīng)該使你有底氣很多~

RunLoop整體介紹

An event-processing loop, during which events are received and dispatched to appropriate handlers.

事件運行循環(huán):就類似下面的while循環(huán)部分,當然要復(fù)雜很多,可以把它抽象成如下代碼:

main() {
    initialize();
    do {        message = get_next_message();
        process_message(message);
    } while (message != quit);
}

“消息”循環(huán),等待消息(會休眠)->接收消息->處理消息。通過上面的代碼,runloop本質(zhì)就是提供了一種消息處理模式,只不過它封裝抽象的太好了(一般開發(fā)的時候根本就感覺不到,或者說不用關(guān)心)。

runloop相當于幫我們打包了各種消息,并將消息發(fā)送給指定的接受者。

網(wǎng)友評論