【code_hyy_基础】RunLoop

一.简介

RunLoop是iOS中的Event Loop实现,简单来说是一个do while循环,需要GCD等协作执行;循环体内没事件需要处理就休眠,被mach_port唤醒之后处理相应事件后判断条件继续进入循环。一个线程只能有一个根RunLoop,RunLoop保存在TSD中;一次RunLoop执行只能指定一个RunLoopMode,mode有timer、source、common和observer等;几乎所有的操作都是通过Call out方法进行回调的,比如点击是通过source1到source0再到action回调;要切换mode必须退出当前RunLoop并指定新mode重新执行。

你可能感兴趣的:(【code_hyy_基础】RunLoop)