多线程学习04-NSThread创建

79 篇文章 0 订阅
12 篇文章 0 订阅

学习多线程04(之前跟着小码哥视频学习了多线程,准备把学到的东西放到网上,便于参考。仅有视频,所以所有文字都是自己打的,同时也温习一下多线程)

NSThread掌握

线程中的任务完成后,线程就会“死掉”释放掉。

三种创建线程的方式:

/** 按钮点击事件 */
- (IBAction)btnClick:(UIButton *)sender {
    
    [self creatNSThread2];
}
/** 创建线程的方式1 */
-(void)creatNSThread1
{
    //创建线程
    NSThread *thread1 = [[NSThread alloc]initWithTarget:self selector:@selector(run:) object:@"jack"];
    thread1.name = @"limin_ios1";
    //启动线程
    [thread1 start];
}
/** 创建线程的方式2 */
-(void)creatNSThread2
{
    //开启新的线程,线程已启动就会掉用方法。但是拿不到创建的线程。
    [NSThread detachNewThreadSelector:@selector(run:) toTarget:self withObject:@"limin_ios2"];
    
}
/** 创建线程的方式3 */
-(void)creatNSThread3
{
    //开一个后台线程,无法给线程附名字
    [self performSelectorInBackground:@selector(run:) withObject:@"limin_ios3"];
    
}
-(void)run:(NSString *)param
{
    NSLog(@"参数:%@,线程:%@,是否是主线程:%i",param,[NSThread currentThread],[NSThread isMainThread]);
    //是否阻塞线程,回到主线程,线程之间的通讯。waitUntilDone:YES
    //    [self performSelectorOnMainThread:@selector(run:) withObject:@"limin_ios4" waitUntilDone:YES];
}


博客原地址:http://blog.csdn.net/leemin_ios/article/details/51188688

<span style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; font-weight: bold; background-color: rgb(255, 255, 255);">[NSThread currentThread]当前线程。</span>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值