iOS_multithreading
文章平均质量分 79
王中尧
工作联系:coderzywang@yeah.net
展开
-
iOS 【Multithreading-线程间的交互通信(图片下载示例)(掌握)】
我们常常要将主线程中的事情交给子线程去做,也会常常将子线程处理的结果反馈给主线程,那么就有了线程间的交互通信了。下面由一个图片下载的例子来解释这个过程。效果图:单击屏幕,会让imageView获得图片,而这个图片是从网站上下载下来的。代码://// ViewController.m// 36-线程间的通信(图片下载)(掌握)//#import "ViewCon原创 2016-01-15 20:24:40 · 932 阅读 · 0 评论 -
iOS 【多线程安全隐患】
一块资源可能会被多个线程所共享,也就是多个线程可能会访问同一块资源(比如说多个线程访问同一个文件、同一个对象、同一个变量)当多个线程访问同一块资源时,很容易发生 数据错乱和数据安全 问题。示例一:有蓝色和橙色两条线程来执行存取钱的操作,但是CPU只能在同一时刻处理一条线程,那么肯定有一个先后顺序。我们假设蓝色的快一些,蓝色线程要存钱,执行到一半的时候橙色开始了取钱。当蓝色执行完毕,原创 2016-01-15 10:56:37 · 1220 阅读 · 0 评论 -
iOS 【Mutithreading-NSRunLoop 运行循环】
//// ViewController.m// 0713-04NSRunLoop-01//// Created by 王中尧 on 16/7/12.// Copyright © 2016年 wzy. All rights reserved.///* NSRunLoop(运行循环) 和 线程 是一一对应的关系,因为底层实现是字典 一、基本作用(作用重大) a 保持程原创 2016-07-13 01:14:55 · 1431 阅读 · 0 评论 -
iOS 【Multithreading-多图下载数据展示案例(二级缓存)/模拟SDWebImage内部实现】
#import "ViewController.h"#import "WZYApp.h"@interface ViewController ()// 数据模型数组@property (nonatomic, strong) NSArray *apps;// 保存操作对象的字典@property (nonatomic, strong) NSMutableDictionary *oper原创 2016-07-12 19:53:35 · 2259 阅读 · 0 评论 -
iOS 【Multithreading-GCD 同步/异步函数 和 串行/并发队列 的6种搭配使用及介绍】
★★ 同步和异步关注的是消息通信机制 (synchronous communication/ asynchronous communication)★ 所谓同步,就是在发出一个调用时,在没有得到结果之前,该调用就不返回。但是一旦调用返回,就得到返回值了。换句话说,就是由调用者主动等待这个调用的结果。★ 而异步则是相反,调用在发出之后,这个调用就直接返回了,所以没有返回结果。换句话说,当原创 2016-01-16 21:04:05 · 1547 阅读 · 0 评论 -
iOS 【Multithreading-线程间通信(NSOperation)/最大并发数/操作依赖/NSOperation优先级】
//// ViewController.m// 45-NSOperation(NSOperationQueue)//// Created by 王中尧 on 16/1/22.// Copyright © 2016年 黑马. All rights reserved.//#import "ViewController.h"@interface ViewController原创 2016-01-22 21:25:06 · 1946 阅读 · 0 评论 -
iOS 【Multithreading-GCD 延时执行操作】
//// ViewController.m// 40-GCD 延迟执行(4)(掌握)//#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; //原创 2016-01-18 17:41:48 · 988 阅读 · 0 评论 -
iOS 【Multithreading-栅栏函数/快速迭代(剪切图片)/队列组(图片水印)】
//// ViewController.m// 0709-01GCD中的常用函数-01//// Created by 王中尧 on 16/7/9.// Copyright © 2016年 wzy. All rights reserved.//#import "ViewController.h"@interface ViewController ()@property原创 2016-07-10 01:15:20 · 1046 阅读 · 0 评论 -
iOS 【Multithreading-GCD一次性代码及其在单例模式的应用】
有些时候,我们只希望某些操作只执行一次。我们可能会想,弄一个BOOL类型的属性,通过它的变化,来使操作只执行一次。但是这个方法有不足之处,因为如果我们将操作放在了一个全新的类中,让BOOL类型的属性作为其新类的对象的一个属性。而我们是让这个新类的对象去执行我们的操作,在这个过程中,我们每弄一次都要实例化一个新类的对象,那么每次使用的BOOL类型的属性也都是新的,所以做不到一次性了。那么我们应该如何原创 2016-01-19 09:24:01 · 1504 阅读 · 0 评论 -
iOS 【Multithreading-创建线程的方式/线程状态(了解)】
这一部分仅作了解,喜欢的同学可以敲一下加深理解。创建线程提供了三种方式,而线程的状态列举了 启动、睡眠、终端 三种。//// ViewController.m// 34-创建线程的方法(了解)//#import "ViewController.h"@interface ViewController ()//@property (nonatomic, strong)原创 2016-01-15 09:30:35 · 802 阅读 · 0 评论 -
iOS 【一篇文章引发的思考 —— 异步/同步/并发/串行】
对 stackoverflow 上面一篇提问引发的思考,关于 异步/同步/并发/串行 的深层次理解。原创 2017-06-27 11:25:18 · 1379 阅读 · 2 评论