1 什么是RunLoop?
一个RunLoop就是一个事件处理的循环(do-while循环),用来不停的调度工作以及处理输入事件(比 如Source,Timer,Observer)。使用run loop的目的是让你的线程有事做事,无事休眠。
2 run loop与线程?
主线程的run loop默认是启动的,对其它线程来说run loop默认是没有启动的;
在任何一个Cocoa程序的线程中,都可以通过[NSRunLoop currentRunLoop]来获取到当前线程的run loop。
3 [[NSRunLoop currentRunLoop] run]?
执行线程[[NSRunLoop currentRunLoop] run]前未执行完的操作,并让当前线程休眠,除非被唤醒;
参考:https://blog.youkuaiyun.com/u011619223/article/details/50075495