编程最怕的就是有盲点,不确定,而runloop官网对其提及的又很少;那么看完这篇应该使你有底气很多~

RunLoop整体介绍

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

事件运行循环:就类似下面的while循环部分,当然要复杂很多,可以把它抽象成如下代码:

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

“消息”循环,等待消息(会休眠)->接收消息->处理消息。通过上面的代码,runloop本质就是提供了一种消息处理模式,只不过它封装抽象的太好了(一般开发的时候根本就感觉不到,或者说不用关心)。

runloop相当于帮我们打包了各种消息,并将消息发送给指定的接受者。

网友评论