您的位置:首页 > 移动开发 > IOS开发

IOS 学习 多线程

2015-08-25 15:08 465 查看
1 不要同时开太多线程 1~3条

2线程概念

主线程 UI线程 不要把耗时操作放在主线程

子线程

一 NSThread

1 创建和启动线程的三种方式

1)先创建 后启动

// 创建

NSThread *thread = [[NSThread alloc] initWithTarget:self selector:@selector(download:) object:nil];

// 启动

[thread start];

2) 创建完自动启动

[NSTgread detachNewThreadSelector:@selector(download:) toTarget:self withObject:nil];

3)隐式创建(自动启动)

[self performSelectorBackground:@selector(download:) withObject:nil];

2 创建方法

获得当前线程

+(NSThread *)currentThread;

2) 获得主线程

+(NSThread *)mainThread;

3) 睡眠(暂停) 线程

+(void)sleepUntilData:(NSDate *)date;

+(void)sleepForTimeInterval:(NSTimeInterval)ti;

4) 设置线程的名字

-(void) setName:(NSString *)n;

-(NSString *)namel

二 线程同步

1 实质 为了防止多个线程抢夺同一个资源造成的数据安全问题

2 实现 给代码加一个互斥锁

@synchronized(self){

//被锁住的代码

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ios