Runloop之个人理解更像是一种线程等待机制,传统线程的消息传入机制,线程收到什么样的消息,就执行什么样的动作,如果是信号量队列型的,其实就基本实现了线程在无消息时挂住休眠;而不是在每隔一段时间就要转起来动作下.这样在移动设备上节省下来的电力就相当可观了. Runloop更大功用就在此,一是以OC...
分类:
其他好文 时间:
2015-08-19 19:29:43
阅读次数:
136
runloop作用
使程序一直运行并接收用户的输入
决定程序在何时处理哪些事件
调用解耦(Message Queue)
节省CPU时间(当程序启动后,什么都没有执行的话,就不用让CPU来消耗资源来执行,直接进入睡眠状态)
模式
RunLoop 在同一段时间只能且必须在一种特定的模式下运行
如果要更换 Mode,必须先停止当前的 Loop,然后再重新启动 Loop
Mode 是保证滚动流畅的关键
NS...
分类:
其他好文 时间:
2015-08-16 02:10:09
阅读次数:
179
iOS中RunLoop机制浅探 一、浅识RunLoop ????????RunLoop这个家伙在iOS开发中,我们一直在用,却从未注意过他,甚至都不从见过他的面孔,那个这个神秘的家伙究竟是做什么的?首先,我们先来观察一下我们的...
分类:
移动开发 时间:
2015-08-13 18:19:24
阅读次数:
256
iOS中timer相关的延时调用,常见的有NSObject中的performSelector:withObject:afterDelay:这个方法在调用的时候会设置当前runloop中timer,还有一种延时,直接使用NSTimer来配置任务。这两种方式都一个共同的前提,就是当前线程里面需要有一个运...
分类:
移动开发 时间:
2015-08-11 00:10:40
阅读次数:
179
转自:http://www.jianshu.com/p/41901fb416d6什么是RunLoop?从字面意思看:运行循环、跑圈其实它内部就是do-while循环,在这个循环内部不断地处理各种任务(比如Source、Timer、Observer)一个线程对应一个RunLoop,主线程的RunLoo...
分类:
移动开发 时间:
2015-08-08 18:11:04
阅读次数:
239
RunLoop 是 iOS 和 OSX 开发中非常基础的一个概念,这篇文章将从 CFRunLoop 的源码入手,介绍 RunLoop 的概念以及底层实现原理。之后会介绍一下在 iOS 中,苹果是如何利用 RunLoop 实现自动释放池、延迟回调、触摸事件、屏幕刷新等功能的。IndexRunLoop ...
分类:
移动开发 时间:
2015-08-03 16:25:37
阅读次数:
358
创建timer对象的三种方法一、这两个类方法创建一个timer并把它指定到一个默认的runloop模式中
+ (NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)ti invocation:(NSInvocation *)invocation repeats:(BOOL)yesOrNo;
+ (NSTimer *)scheduledTi...
分类:
移动开发 时间:
2015-07-28 23:22:37
阅读次数:
428
-
(BOOL)application:(UIApplication
*)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window
= [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bou...
分类:
其他好文 时间:
2015-07-18 15:38:42
阅读次数:
159
RunLoop前言RunLoop是iOS/OS开发中比较基础的一个概念,在苹果开发中用在事件处理,延迟加载,屏幕刷新等功能的处理,其实抛开语言,RunLoop是一个的架构模式,也就是RunLoop不仅仅局限于iOS开发。网上有很多关于RunLoop的干货,但大多不怎么全,这位哥们的写的挺好的,挺详细...
分类:
移动开发 时间:
2015-07-14 15:19:31
阅读次数:
140
//第一步:创建一个新的子线程,为了不阻塞当前线程- (NSThread *)archiveringThread { static NSThread *_thread = nil; static dispatch_once_t onceToken; __weak __t...
分类:
编程语言 时间:
2015-07-14 13:23:08
阅读次数:
138