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/...