RunLoop是什么?

一个RunLoop就是一个事件处理的循环,用来不停的调度工作以及处理输入时间。 使用runloop的目的是让你的线程在有工作的时候忙于工作,而没工作的时候出于休眠状态。runloop的设计是为了减少cpu无谓的空转,每个开辟的线程都有一个runloop, 主线程的runloop默认是开启的, 咱们手动开辟的子线程runloop是默认不开启的,如果需要开启,需要调用API[NSRunLoop currentRunLoop]开启,最常见的需要开启runloop的是在子线程里面调用计时器(NSTimer),如果不开启runloop循环方法就不能正常执行。

原文地址:https://www.cnblogs.com/GYCocoa/p/5408883.html