OC之多线程

本文主要介绍了Objective-C(OC)中的多线程技术,包括NSThread的基础使用,重点探讨了GCD(Grand Central Dispatch)如何充分利用多核优势,详细讲解了并发队列与串行队列的获取及同步、异步执行方法。此外,还提到了线程间通信的重要性和NSOperation的两种实现方式,如NSInvocationOperation和NSBlockOperation,并强调可以通过重写main方法来定制NSOperation的功能。
摘要由CSDN通过智能技术生成

事情太忙碌,直接用OC记录了,以后使用时,再换成Swift

多线程

1、NSThread

-》最基本的创建方式

    /**
     创建线程第一种方法,需要调用start方法才可以执行
     */
    NSThread *thread = [[NSThread alloc] initWithTarget:self selector:@selector(run) object:nil];
    thread.name = @"Custom Thread";
    [thread start];

-》直接创建,无须手动启动

    /**
     *  创建线程后自动启动
     */
    [NSThread detachNewThreadSelector:@selector(run) toTarget:self withObject:nil];

    /**
     *  隐式创建并启动线程
     */
    [self performSelectorInBackground:@selector(run) withObject:nil];

-》其他方法

    /**
     *  获得当前线程
     */
    NSThread *thread = [NSThread currentThread];
    /**
     *  获得主线程
     */
    NSThread *mainThread = [NSThread mainThread];
-》线程间的通信
    /**
     *  线程间的通信
     */
    [thread performSelectorOnMainThread:@selector(run) withObject:nil waitUntilDone:true];


2、GCD(重点,充分利用手机的多核)

-》队列

--》并发队列:dispatch_get_global_queue

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值