iPhone 中的线程应用并不是无节制的,官方给出的资料显示iPhone OS下的主线程的堆栈大小是1M,第二个线程开始都是512KB。并且该值不能通过编译器开关或线程API函数来更改。 只有主线程有直接修改UI的能力。一、NSOperation和NSOperationQueue 1、一个继承自.....
分类:
移动开发 时间:
2015-07-22 20:24:06
阅读次数:
137
多线程技术process进程:在系统中运行的一个应用程序;每个进程都是独立的;有专有的内存空间thread线程:程序的一段执行序列,进程的不部分; 特点:1、进程只分配内存空间,并不执行任务 2、每个进程至少有一个线程,该线程叫做主线程 3、线程...
分类:
移动开发 时间:
2015-07-16 02:10:07
阅读次数:
806
前言
1.上一讲简单介绍了NSThread的使用,虽然也可以实现多线程编程,但是需要我们去管理线程的生命周期,还要考虑线程同步、加锁问题,造成一些性能上的开销。我们也可以配合使用NSOperation和NSOperationQueue实现多线程编程,实现步骤大致是这样的:
1> 先将需要执行的操作封装到一个NSOperation对象中
2> 然后将NSOperation对象添加到...
分类:
编程语言 时间:
2015-07-14 10:07:44
阅读次数:
244
1.iOS的三种多线程技术 1.NSThread每个NSThread对象对应一个线程,量级较轻(真正的多线程)2.以下两点是苹果专门开发的“并发”技术,使得程序员可以不再去关心线程的具体使用问题ØNSOperation/NSOperationQueue面向对象的...
分类:
移动开发 时间:
2015-07-12 01:46:38
阅读次数:
176
NSOperationQueue的简单使用过程:1. 建立一个NSOperationQueue的对象2. 建立一个NSOperation的对象3. 将operation加入到NSOperationQueue中 MRC 需要手动释放4. release掉operationNSOperationQue....
分类:
编程语言 时间:
2015-07-08 18:47:48
阅读次数:
125
iOS的三种多线程技术特点:
1.NSThread:
1> 优点:NSThread对象建立一个线程非常方便;
2> 缺点:要使用NSThread管理多个线程非常困难,不推荐使用;
3> 技巧:使用[NSThread currentThread]跟踪任务所在线程,适用于这三种技术.
2.NSOperation/NSOperationQueue:
1> 概念1:是使用GCD实现的一套Objective-C的API;
2> 概念2:是面向对象的多线程技术;
...
分类:
移动开发 时间:
2015-07-06 17:57:52
阅读次数:
237
一、简介一个NSOperation对象可以通过调用start方法来执行任务,默认是同步执行的。也可以将NSOperation添加到一个NSOperationQueue(操作队列)中去执行,而且是异步执行的。创建一个操作队列:[java]view plaincopyNSOperationQueue*q...
分类:
其他好文 时间:
2015-06-25 19:31:19
阅读次数:
112
GCD编程的核心就是dispatch队列,dispatch block的执行最终都会放进某个队列中去进行,它类似NSOperationQueue但更复杂也更强大,并且可以嵌套使用。所以说,结合block实现的GCD,把函数闭包(Closure)的特性发挥...
分类:
移动开发 时间:
2015-06-21 18:40:14
阅读次数:
142
可以有两个办法让NSURLConnection在子线程中运行,即将NSURLConnection加入到run loop或者NSOperationQueue中去运行。前面提到可以将NSTimer手动加入NSRunLoop,Cocoa库也为其它一些类提供了可以手动加入NSRunLoop的方法,这些类有N...
分类:
编程语言 时间:
2015-06-19 18:06:19
阅读次数:
175
多线程 是一个应用程序内多个代码的执行路径,执行线程,同时在同一时间里执行不同的任务。三种:1、NSTread2、Cocoa NSOperation (NSOperation,NSOperationQueue)3、GrandCentralDispatch:GCD1\NSTread相对最简单,需要自....
分类:
移动开发 时间:
2015-06-16 19:06:03
阅读次数:
162