IOS_多线程
文章平均质量分 83
缘点星空
这个作者很懒,什么都没留下…
展开
-
iphone——使用run loop对象
如果你在非main thread中运行run loop,你必须至少为该run loop添加一个input sources或timer。如果你运行的run loop没有监控任何的输入源,该run loop将在你运行后立即退出。 Run loop observer 使用detachNewThreadSelector:toTarget:withObject:创建一个thread:转载 2013-06-08 23:17:29 · 569 阅读 · 0 评论 -
利用NSRunLoop阻塞NSOperation线程
在使用NSOperationQueue简化多线程开发中介绍了多线程的开发,我这里主要介绍一下使用NSRunLoop阻塞线程。 主要使用在NStimer定时启用的任务或者异步获取数据的情况如socket获取网络数据,要阻塞线程,直到获取数据之后在释放线程。 下面是线程中没有使用NSRunLoop阻塞线程的代码和执行效果: 线程类: #import @interface MyTas转载 2013-06-08 23:07:21 · 651 阅读 · 0 评论 -
NSRunLoop概念
Run loop mode是一组用于监控的input sources和timers以及一组用于通知的run loop observers。每次运行一个run loop,你指定(显式或隐式)run loop的运行模式。当相应的模式传递给run loop时,只有与该模式对应的input sources才被监控并允许run loop对事件进行处理(与此类似,也只有与该模式对应的observers才会被通转载 2013-06-08 23:11:34 · 554 阅读 · 0 评论 -
NSTimer与UITableView同时使用
如果使用默认的设置,在滑动tableview时,timer不会触发时间函数,因为他们使用共同的runloop而tableview的滑动阻止了timer的函数调用。要实现并行,可以如下: NSTimer* timer = [NSTimer timerWithTimeInterval:0.005 target:self selector:@selector(timerFireMethod:转载 2013-06-08 22:49:22 · 2191 阅读 · 0 评论 -
iOS并行机制
今天开发中用到了并行,代码如下: dispatch_group_t group = dispatch_group_create(); dispatch_group_async(group, dispatch_get_global_queue(0,0), ^{ // 初始化mainDB [[WBDBMan DBMan] prepare转载 2013-08-22 15:27:30 · 665 阅读 · 0 评论