NSRunLoop是苹果的平台下的消息处理机制,我们都知道消息处理就是一个永无至今的循环,进行处理I/O,看了很多文章的介绍、官方文档甚至看了有些人的源码(CFRunLoopRef)分析,有如下几个问题希望各路高手能够进行解答。
1.NSRunLoop究竟是一个什么东西?里面是一个死循环?有消息的监听和收发?
2.NSRunLoop究竟是怎么具体唤醒和休眠线程的?
3.NSRunLoop何如接受我们自定义的时间对其所在的线程进行休眠和唤醒?
4.NSTimer和NSRunLoop究竟有什么关系,如果一个repeat的NSTimer和NSRunLoop的循环有什么关系?
5.我们能通过使用NSRunLoop或者是CFRunLoopRef自己构建事件循环吗?简单的那种,不是像App内那种监控各种复杂事件的,简单的实现特定的输入和输出,使得线程得以休眠和唤醒。
希望各路高手能够有兴趣回答一下,不胜感激!
关于 RunLoop 、Runtime 其实一般项目中用到的并不多,好多人(我也是)都是一知半解,我个人觉得只有在面试的时候,装逼用的。
你的问题,我大都也能答出来,想来还是给你个链接,装逼之前看下就好了,http://www.cnblogs.com/ioshe/...