![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
多线程
文章平均质量分 56
Cui_Ankly
iOS软件开发
展开
-
iOS-GCD的串行队列和并行队列的任务及实现
什么是GCD GCD全称是GrandCentral Dispatch,纯C语言的,提供了非常多强大的函数 •GCD的优势 1,GCD是苹果公司为多核的并行运算提出的解决方案 2,GCD会自动利用更多的CPU内核(比如双核、四核) 3,GCD会自动管理线程的生命周期(创建线程、调度任务、销毁线程) 4,程序员只需要告诉GCD想要执行什么任务,不需要编写任何线程管理代码原创 2016-04-17 10:15:11 · 11428 阅读 · 3 评论 -
iOS- 延迟1秒执行一个函数
本文列举了四种延时执行某函数的方法及其一些区别。 假如延时1秒时间执行下面的方法。 - (void)delayMethod { NSLog(@”execute”); } 1.performSelector方法[self performSelector:@selector(delayMethod) withObject:nil afterDelay:1.0f]; 此方式要求必须在主线程中执行,原创 2016-09-06 20:50:07 · 10777 阅读 · 0 评论 -
iOS--多线程具体总结(OC&Swift)
整理一下 iOS 开发中几种多线程方案,以及其使用方法和注意事项。当然也会给出几种多线程的案例,在实际使用中感受它们的区别。使用 Swift 和 Objective-C 两种语言讲解在 iOS 中其实目前有 4 套多线程方案,他们分别是:1,Pthreads 2,NSThread 3,GCD 4,NSOperation & NSOperationQueuePthreadsPOSIX线程(POS原创 2016-07-22 09:42:30 · 1150 阅读 · 0 评论 -
IOS 多线程,线程同步的三种方式
本文主要是讲述 IOS 多线程,线程同步的三种方式,更多IOS技术知识,请登陆疯狂软件教育官网。 一般情况下我们使用线程,在多个线程共同访问同一块资源。为保护线程资源的安全和线程访问的正确性。 在IOS中我们一般情况下使用以下三种线程同步代码方式: 第一种和第二种代码同步的使用方法,一般情况下我们只需要使用NSLock和NSCondition申明2个属性。然后给此属 性赋对应原创 2016-07-27 10:28:57 · 1081 阅读 · 0 评论 -
ios多线程开发的常用三种方式
1.NSThread2.NSOperationQueue3.GCDNSThread:创建方式主要有两种:[NSThread detachNewThreadSelector:@selector(myThreadMainMethod:) toTarget:self withObject:nil]; 和 NSThread* myThread = [[NSThread alloc] initWithTarg原创 2016-07-27 10:26:19 · 434 阅读 · 0 评论 -
iOS开发多线程篇—线程间的通信
一、简单说明 线程间通信:在1个进程中,线程往往不是孤立存在的,多个线程之间需要经常进行通信线程间通信的体现 1个线程传递数据给另1个线程 在1个线程中执行完特定任务后,转到另1个线程继续执行任务线程间通信常用方法- (void)performSelectorOnMainThread:(SEL)aSelector withObject:(id)arg waitUntilDone:(BOOL)w原创 2016-05-09 12:52:02 · 1180 阅读 · 0 评论 -
NSCache的简单介绍应用
NSCache介绍 NSCache 是苹果提供的一个专门用来做缓存的类 使用和 NSMutableDictionary 非常相似 是线程安全的 当内存不足的时候,会自动清理缓存 程序开始时,可以指定缓存的数量 & 成本 方法取值 - (id)objectForKey:(id)key; 设置对象,0成本 - (void)setObject:(id)obj forKey:(id)key原创 2016-04-22 12:11:29 · 476 阅读 · 0 评论 -
GCD高级功能(一次性执行,调度组,延迟操作)
一次性执行 一次性执行 : 可以保证某一段代码在程序运行的过程中只被执行一次 一次性执行是线程安全的,在多线程环境下也是只执行一次 应用场景 : 设计单例模式.(效率比互斥锁高) 可以保证程序在运行的过程中,一个类有且只有一个实例化的对象,而且该对象易于供外界访问 可以节省内存资源/// 验证安全性 : 线程安全 - (void)onceDemo2 { for (int i = 0原创 2016-04-22 12:03:51 · 683 阅读 · 0 评论 -
CGD全局并发队列和主队列的应用
* 1. 主队列特点 :主队列中的任务,只有主线程空闲的时候才会被调度 2. 主队列又叫全局串行队列,程序启动的时候就创建了主队列,在使用的时候不需要创建,直接GET. 2. 主队列中的任务一定是要在主线程执行的. */ pragma mark - 主队列+同步任务// 不能向主队列中添加同步任务,会死锁- (void)GCDDemo2{ // 获取主队列 dispat原创 2016-04-22 11:37:51 · 678 阅读 · 0 评论 -
iOS ---GCD 总结篇章
对初学者来说,GCD似乎是一道迈不过去的坎,很多人在同步、异步、串行、并行和死锁这几个名词的漩涡中渐渐放弃治疗。本文将使用图文表并茂的方式给大家形象地解释其中的原理和规律。 首先:什么是多线程? 1个进程中可以开启多条线程,每条线程可以并行(同时)执行不同的任务 比如:进程 ->车间,线程->车间工人 多线程技术可以提高程序的执行效率 比如同时开启3条线程分别下载3个文件(分别是文件A、文原创 2017-03-23 08:08:42 · 394 阅读 · 1 评论