
ios多线程技术
CQAHF
爱苹果,爱生活
爱编程,爱自己
展开
-
NSOperation多线程实现队列
NSOperation://NSOperation和NSThread最主要的区别是:前者是通过创建线程池,把任务添加到线程池来实现多线程并发操作。通过NSOperationQueue可以设置任务的调度顺序和最大并发数,以此达到任务的相对独立运行,而NSThread是通过加锁的方式来保证线程间的独立运行,来保证数据的准确性。1:NSOperation基本概念2:NSOperation的创原创 2018-01-22 13:55:51 · 455 阅读 · 0 评论 -
NSThread多线程
NSThread:1:NSThread基本概念2:NSThread的创建3:NSThread的使用基本函数:1:inITWithTarget:创建线程2:detachNewThreadSelector:类方法创建并启动线程3:lock:线程加锁4:unlock:线程解锁5:sleepForTimeInterval:线程休眠具体实现如下://// Vi原创 2018-01-22 10:53:15 · 286 阅读 · 0 评论 -
iOS 信号量机制
使用gcd的同学大都知道ios中开辟线程,使用gcd很容易实现。如果同时要开启多个子线程异步执行,那么同学们有没有考虑过多个子线程异步执行的时候,假如cpu提供的可用资源不足以支撑n个子线程run的时候,会出现什么情况?也许有的同学会认为添加线程锁让线程处于加锁状态下运行,这样的确可用控制,但是gcd的控制就需要使用gcd特有的处理方式,也就是今天所说的信号量机制。通过信号量来严格控...原创 2018-09-14 17:28:05 · 1192 阅读 · 0 评论 -
IOS 任务执行顺序
关于dispatch_group的概念以及几种场景下的使用:1、调用接口的时候,一个vc下要调用多个接口的情况下,而且这写接口成功回调顺序需要严格控制。目前的解决方式通常是在第一个接口成功的回调里边调起第二个接口,这种方式不能说不行,但是某些时候可能也会存在无法控制不能实现业务逻辑。但是通过dispatch_group就可以很好的控制并实现这一目的。2、现在有4个任务,任务1、任务2、任务...原创 2018-09-14 17:43:38 · 1855 阅读 · 0 评论