码迷,mamicode.com
首页 >  
搜索关键字:runloop    ( 307个结果
NSRunloop和NSThread的情感纠葛
一直觉得runloop这东西很神奇、很飘渺,现在还是觉得这玩意很飘渺 -_-.前两天特地花了点时间看了下官方的文档,把我理解的和觉得重要的跟大家分享下,欢迎批评指正。线程实现的几种方式:1. Operation Objects // NSOperation及相关子类2. G C D // dispa...
分类:其他好文   时间:2014-11-11 15:57:54    阅读次数:191
__weak 和 __strong 还有Autorelease的用法
使用容器的block版本的枚举器时,内部会自动添加一个AutoreleasePool:Autorelease对象是在当前的runloop迭代结束时释放的,而它能够释放的原因是系统在每个runloop迭代中都加入了自动释放池Push和Pop当然,在普通for循环和for in循环中没有,所以,还是新版...
分类:其他好文   时间:2014-11-01 20:22:42    阅读次数:208
1.RunLoop是什么?
1.Run loops是线程相关的的基础框架的一部分。     一个run loop就是一个事件处理的循环,用来不停的调度工作以及处理输入事件。使用run loop的目的是让你的线程在有工作的时候忙于工作,而没工作的时候处于休眠状态。 Run loop的管理并不完全自动的。       你仍然需要设计你的线程代码在合适的时候启动run loop并正确响应输入事件。Cocoa和Core Fun...
分类:其他好文   时间:2014-10-25 11:58:34    阅读次数:204
runloop timer
RunLoop这个东西,其实我们一直在用,但一直没有很好地理解它,或者甚至没有知道它的存在。RunLoop可以说是每个线程都有的一个对象,是用来接受事件和分配任务的loop。永远不要手动创建一个runloop,它是跟随着每个线程的。一个RunLoop接收两种source的事件:input sourc...
分类:其他好文   时间:2014-10-23 14:23:12    阅读次数:156
NStimer 被阻塞
我们在界面上滚动一个scrollview,那么我们会发现在停止滚动前,会发现NSTimer未被执行,就好像scrollView在滚动的时候将timer暂停了一样,在查看相应文档后发现,这其实就是runloop的mode在做怪。 runloop可以理解为cocoa下的一种消息循环机制,用来处理各种消息事件,我们在开发的时候并不需要手动去创建一个runloop,因为框架为我们创建了一个默认的runl...
分类:其他好文   时间:2014-10-16 12:26:42    阅读次数:134
执行autorelease方法的对象什么时候被释放。
OS的运行时是由一个一个runloop组成的,每个runloop都会执行下图的一些步骤:可以看到,每个runloop中都创建一个AutoreleasePool,并在runloop的末尾进行释放,所以,一般情况下,每个接受autorelease消息的对象,都会在下个runloop开始前被释放。也就是说,在一段同步的代码中..
分类:其他好文   时间:2014-10-14 04:16:17    阅读次数:220
【iOS开发每日小笔记(九)】在子线程中使用runloop,正确操作NSTimer计时的注意点 三种可选方法
这篇文章是我的【iOS开发每日小笔记】系列中的一片,记录的是今天在开发工作中遇到的,可以用很短的文章或很小的demo演示解释出来的小心得小技巧。它们可能会给用户体验、代码效率得到一些提升,或是之前自己没有接触过的技术,很开心的学到了,放在这里得瑟一下。其实,90%的作用是帮助自己回顾、记忆、复习。一...
分类:移动开发   时间:2014-09-16 23:28:51    阅读次数:335
AlertView点击确定后再执行后面的代码-runloop的妙用
AlertView的show方法执行后,后面的代码会继续运行,而不会等待用户按键结束再走,这样,如果把弹出的代码写在一个BOOL函数里,没等用户确认直接返回NO就惨了,解决方法:- (BOOL)beforeBackButtonClickEvent {UIAlertView *alert = [[UI...
分类:其他好文   时间:2014-09-15 15:29:59    阅读次数:203
iOS多线程中performSelector: 和dispatch_time的不同
我们知道:只有主线程会在创建的时候默认自动运行一个runloop,并且有timer,普通的子线程是没有这些的。这样就带来一个问题了,有些时候我们并不确定我们的模块是不是会异步调用到,而我们在写这样的延时调用的时候一般都不会去检查运行时的环境,这样在子线程中被调用的时候,我们的代码中的延时调用的代码就会一直等待timer的调度,但是实际上在子线程中又没有这样的timer,这样我们的代码就永远不会被调到。...
分类:移动开发   时间:2014-08-28 18:08:05    阅读次数:163
IOS开发——多线程编程
1.“省电,流畅,优质应用,响应速度快,用户体验好……”也许是众多用户眼中的苹果系统。 2.在众手机商拼CPU主频,拼4核,8核的年代,苹果依然坚持双核,iphone用户体验仍然坚挺。 可以说,RunLoop是IOS比android省电,流畅,用户体验好的主要原因。...
分类:移动开发   时间:2014-08-01 00:03:00    阅读次数:245
307条   上一页 1 ... 28 29 30 31 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!