摘要: 互斥锁:是为了避免多个线程抢夺资源造成数据不准确问题而提出的,是为了限制同一时刻多个线程访问同一个数据.首先需要了解两个概念:1>多线程并发执行:我们都知道,如果不涉及两个线程之间传值或是共享资源的时候,多个线程之间是没有交集的,你走你的阳关道我走我的独木桥,井水不犯河水,但是如果需要传值或是共享资... 阅读全文
posted @ 2015-11-13 03:07 LDSmallCat 阅读(1462) 评论(0) 推荐(0) 编辑
摘要: 线程一般情况可分为五种状态:1>新建状态刚刚创建出来,还不能使用,就是下面代码刚刚结束那一刻线程的状态. NSThread *thread = [[NSThread alloc] initWithTarget:self selector:@selector(run) obj... 阅读全文
posted @ 2015-11-13 02:21 LDSmallCat 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 创建和启动线程一个NSThread对象就代表一条线程创建、启动线程NSThread *thread = [[NSThread alloc] initWithTarget:self selector:@selector(run) object:nil];[thread start];// 线程一启动,... 阅读全文
posted @ 2015-11-12 22:52 LDSmallCat 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2015-11-12 22:32 LDSmallCat 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 有了上一篇文章的铺垫直接上代码,下面是分析原理.// ViewController.m// 大文件下载// Created by apple on 15/11/11.// Copyright © 2015年 LDSmallCat. All rights reserved.#import "V... 阅读全文
posted @ 2015-11-11 22:06 LDSmallCat 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 为了说清楚下一篇文章需要了解一下NSURLConnection及NSURLConnectionDataDelegate二.NSURLConnection@interface ViewController ()@end@implementation ViewController- (void)down... 阅读全文
posted @ 2015-11-11 21:53 LDSmallCat 阅读(558) 评论(0) 推荐(0) 编辑
摘要: 利用GCD实现单例:使用dispatch_once函数能保证某段代码在程序运行过程中只被执行1次static dispatch_once_t onceToken;dispatch_once(&onceToken, ^{ // 只执行1次的代码(这里面默认是线程安全的)});条件编译:#if __ha... 阅读全文
posted @ 2015-11-11 21:31 LDSmallCat 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 有了前两篇的文章这里直接给出代码,这种方法不是纯粹的饿汉式,比较懒汉式代码会容易一点点,但是苹果官方不推荐,了解一下就好.此时没有多线程的困扰,使用之前就创建一个单例对象,此时还没有线程.所以不需要加锁.static id _instance = nil;+(void)load{//该类加载之后lo... 阅读全文
posted @ 2015-11-11 03:06 LDSmallCat 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 为了讲清楚饿汉式单例模式实现需要了解一下这两个方法.它们的特别之处,在于iOS会在运行期提前并且自动调用这两个方法,而且很多对于类方法的规则(比如继承,类别(Category))都有不同的处理因为这两个方法是在程序运行一开始就被调用的方法,我们可以利用他们在类被使用前,做一些预处理工作。比如我碰到的... 阅读全文
posted @ 2015-11-11 02:50 LDSmallCat 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 为什么要使用单例模式:相比于代理更方便在不同类之间实现数据的传递,要点:保证某个类只有一个实例对象 1 static id _instance = nil;//定义一个静态全局变量 2 + (instancetype)allocWithZone:(struct _NSZone *)zone{ 3 ... 阅读全文
posted @ 2015-11-11 00:52 LDSmallCat 阅读(153) 评论(0) 推荐(0) 编辑