#import?"ViewController.h"
@interface?ViewController?()
{
????NSInteger?_cnt;
????NSLock?*_lock;
}
@end
@implementation?ViewController
-?(void)viewDidLoad?{
????[super?viewD...
分类:
移动开发 时间:
2015-11-12 16:20:12
阅读次数:
287
// 加锁 @synchronized (self) { // 在同一时间,只能一个线程执行,但是很耗资源 } // 解锁关于加锁,这里有一个东西.关于这个语法:@property.每次我们定义 一个属性的时候,会首当其冲的写上nonatomic,这是为什么?请看下面解说:nona...
分类:
移动开发 时间:
2015-10-07 16:08:59
阅读次数:
204
线程同步: 多条线程,在同一条线上按照顺序执行.(互斥锁)
分类:
移动开发 时间:
2015-10-07 16:08:56
阅读次数:
190
参考:http://www.cnblogs.com/kenshincui/p/3983982.html#GCD目录如下:
分类:
移动开发 时间:
2015-09-29 08:45:23
阅读次数:
190
#import "DemoObj.h"@implementation DemoObjstatic DemoObj *instance;/**1. 重写allocWithZone,用dispatch_once实例化一个静态变量2. 写一个+sharedXXX方便其他类调用*/// 在iOS中,所有对象...
分类:
移动开发 时间:
2015-09-15 16:27:00
阅读次数:
167
1、什么是进程? 进程是指在系统中正在运行的一个应用程序。比如同时打开QQ、Xcode,系统就会分别启动2个进程。截图 2、什么是线程? 1)、一个进程要想执行任务,必须得有线程(每一个进程至少要有一条线程) 2)、线程是进程的基本执行单元,一个进程(程序)的所有任务都在线程中执行 3)、...
分类:
移动开发 时间:
2015-09-02 02:01:30
阅读次数:
163
GCD方式是Apple官方推荐实现多线程的方式但在这之前必须理清楚同步,异步,串行队列,并行队列之间的概念.同步:即当前的执行程序块不会创建一个新的线程,只能在当前线程中执行.异步:会在当前的线程之外创建一个新的线程,并在新的线程中执行代码块.首先声明一点,队列是用来存放即将执行的线程体的.串行队列...
分类:
移动开发 时间:
2015-08-08 21:11:29
阅读次数:
563
GCD中几种常见的方法1.代码只被执行一次:(利用这种方式,可以简单的创建一个单例对象)方法dispatch_once(&,^(void){}); 1 - (void)testOne 2 3 { 4 5 static dispatch_once_t onceToken; 6 7 ...
分类:
移动开发 时间:
2015-08-08 21:09:33
阅读次数:
125
#import "ViewController.h" @interface ViewController () @property(nonatomic,strong)NSThread *thread1; @property(nonatomic,strong)NSThread *thread2; .....
分类:
移动开发 时间:
2015-08-08 19:45:20
阅读次数:
120
前段时间看了一遍GCD(Grand Central Dispatch)多线程,GCD是苹果为多核开发提供的解决方案多线程最常见的问题就是读写,比如数据库读写,文件读写,读取是共享的,写是互斥,允许多个线程进行读操作,当写文件时,阻止队列中所有其他的线程进入,直到文件写完成本文利用GCD提供的相关AP...
分类:
移动开发 时间:
2015-07-22 22:05:39
阅读次数:
141