iOS高级-RunLooper
普通代码都是命令式执行:执行完了就完了,但是手机应用肯定不是这样程序会一直在运行的,可以归纳成一个event驱动,说白了就是一个死循环
如下伪代码:
int main()
{
while(APPIsRunning){
id whoWakeMe = SleepForWakingUp;
id event = GetEvent(WhoWakeMe);
HandleEvernt(event);
}
return 0;
}
再循环中,有人唤醒程序,再去找唤醒他的人,再由唤醒他的人去找唤醒他的事件,最后执行事件,执行事件。
使程序一直运行并接受用户输入,决定程序何时执行何事,调节解耦message Queue,节省cpu事件