多线程 ——NSThread

原创 2015年11月20日 22:06:33
  • 先看一下线程的状态
    线程的状态

  • 学习多线程的目的:就将耗时操作放到子线程中去执行。
  • [NSThread currentThread] 获得当前方法执行的线程对象
  • 通过number来判断当前线程是主线程还是子线程
  • 提示:不要纠结这个number的值是多少
  • 只要number == 1,则代表是主线程
  • number != 1,则是子线程,这个值是由CPU决定,

  • 创建线程方法一:
- (void)threadDemo1 {
    // 创建线程 -- 仅仅是在内存中创建了一个线程对象,并没有开始执行指定方法
    NSThread *thread = [[NSThread alloc] initWithTarget:self selector:@selector(longOperation:) object:@"alloc"];

    // 开始执行
    [thread start];
}


- (void)longOperation:(id)param{
    NSLog(@"%@---%@",param,[NSThread currentThread]);
}

  • 创建线程方法二:

- (void)threadDemo2 {
    // 创建线程
    // 默认自动开启
    [NSThread detachNewThreadSelector:@selector(longOperation:) toTarget:self withObject:@"detach"];
}

  • 创建线程方法三:
- (void)threadDemo3{
    // 隐式在后台开启线程执行指定的方法。
    // 任何 NSObject对象都可以调用该方法,在后台线程中执行对应的方法
    [self performSelectorInBackground:@selector(longOperation:) withObject:@"performSelector"];
}
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

iOS多线程开发——NSThread浅析

在IOS开发中,多线程的实现方式主要有三种,NSThread、NSOperation和GCD,我前面博客中对NSOperation和GCD有了较为详细的实现,可以参考《iOS多线程开发——NSOper...

iOS之多线程——概念、pthread、NSThread、GCD

1.基本概念 1.1 进程进程是指在系统中正在运行的一个应用程序。每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内。 1.2 线程 (1)基本概念1个进程要想执行任务,必须得有线程(每...

iOS多线程开发——NSThread的简单运用

前段时间写了NSOperation,GCD,最后肯定不能拉下NSThread。毕竟既然学了iOS,该了解的总得都了解的。 介绍NSThread相对于GCG和NSOperation来说更加轻量级。毕竟从...

多线程——NSThread

目录: 基础使用 线程的状态 原子性和非原子性 线程间通信 一、基础使用 1、创建和启动线程一个NSThread对象就代表一条线程创建、启动线程 NSThread *thread = [[NSThr...

iOS多线程学习(2)——NSThread和NSOperation

上一篇  iOS多线程学习(1)——GCD 我们初步介绍了一下多线程和使用GCD来实现多线程。上次我们也提及,iOS使用多线程除了GCD之外,还有NSThread和NSOperation。这也是我...

IOS_多线程-NSThread

  • 2015-05-31 07:54
  • 428B
  • 下载

NSThread多线程

  • 2012-05-04 07:47
  • 870KB
  • 下载

iOS 多线程 NSthread的简单使用——iOS 编码复习(六)(多线程4)

上一篇我们简单过了一下pthread,因为那是c的API,所以一般我们不会用上,从这一篇开始,我将陆续分享我们iOS中用到的“正经”的多线程技术:NSthread、NSOperationQueue、G...

NSThread 多线程

  • 2012-07-23 09:30
  • 1.15MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)