iOS runloop与线程的关系
2019-04-15 本文已影响7人
A_rcher34
runloop是每一个线程一直运行的一个对象,它主要用来负责响应需要处理的各种事件和消息。每一个线程都有且仅有一个runloop与其对应,没有线程,就没有runloop。
在所有线程中,只有主线程的runloop是默认启动的,main函数会设置一个NSRunLoop对象。而其他的线程runloop默认是没有启动的,可以通过[NSRunLoop currentRunLoop]来启动。
当线程的 RunLoop 开启后,线程就会在执行完任务后,处于休眠状态,随时等待接受新的任务,而不是退出。