首页 > 学院 > 开发设计 > 正文

NSThread的一些细节

2019-11-14 20:22:42
字体:
来源:转载
供稿:网友

1.NSThread创建方式(一个NSThread对象就代表一条线程)
1.1>创建/启动线程
(1)线程一启动,就会在thread中执行self的run方法
NSTread *thread = [[NSThread alloc] initWithTarget:self selector:@selector(run) object:nil];
[thread start];
(2)创建线程后自动启动线程
[NSThread detachNewThreadSelector:@selector(run) toTarget:self withObject:nil];
(3)隐式创建并启动线程
[self performSelectorInBackground:@selector(run) withObject:nil];
//(2),(3)两种创建线程方式,优点是简单快捷,缺点是无法对线程进行更详细的设置
1.2>主线程的相关用法
+(NSThread *)mainThread; //获得主线程
(BOOL)isMainThread; //是否为主线程
(BOOL)isMainThread;//是否为主线程(类方法)
1.3>其他用法
NSThread *current = [NSThread currentThread];  //获得当前线程
线程的调度优先级
(double) threadPRiority;
(BOOL)setThreadPriority:(double)p;
//调度优先级的取值范围是0.0 ~ 1.0,默认是0.5,值越大,优先级越高
线程的名字:
-(void)setName:(NSString *)name;
-(NSString *)name;


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表