• 多线程NSThread


    一些基础知识

        //线程就是进程中并发执行的一些代码片段
        /*
         网络传输方式
         同步:所有任务放到一个线程中完成,只要当前任务没有完成  那么下一个任务就处于堵塞的状态
         异步:多个任务放到多个线程中完成  即使当前任务没有完成   那么也不会影响到其他任务的执行
         
         //数据传输方式
         串行:一个线程中只有当前任务完成后  下一个任务才开始执行
         并发:多个线程完成不同的任务 互不干扰
         
         一般的时候   都是说主线程同步异步,工作线程串行并发
         */
        /*
         线程种类
         1、主线程   UI MainThread  平时写的所有代码都是在主线程中进行的,主线程是系统自动生成的,不能修改
         2、工作线程  worker Thread 又称为次线程   secondary Thread   防止主线程出现假死状态  同时也能提高数据的请求和加载速率
         
         
         
         */

    -(void)buttonClick:(id)sender
    {
        UIButton * button = (UIButton *)sender;
        if (button.tag == 1) {
            NSNumber * num = [NSNumber numberWithInt:100];
            //创建工作线程
            //<1>
            //只需要创建线程  不需要手动开启线程
            //线程对象只要被创建   就会自动执行任务
            [NSThread detachNewThreadSelector:@selector(threadMain1:) toTarget:self withObject:num];
        }else
        {
            NSNumber * num = [NSNumber numberWithInt:100];
            //创建线程
            //<2>
            NSThread * thread = [[NSThread alloc]initWithTarget:self selector:@selector(threadMain2:) object:num];
            //必须手动开启线程
            [thread start];
        }
    
    }
    -(void)threadMain1:(NSNumber *)num
    {
        NSLog(@"线程1开始");
        for (int i = 0 ; i<[num intValue]; i++) {
            NSLog(@"线程1 i=%d",i);
            //控制线程的执行时间
            [NSThread sleepForTimeInterval:0.1];
        }
        //线程结束  也就是线程退出
        NSLog(@"线程1结束");
    }
    -(void)threadMain2:(NSNumber *)num
    {
        NSLog(@"线程2开始");
        for (int i = 0 ; i<[num intValue]; i++) {
            NSLog(@"i=%d",i);
            [NSThread sleepForTimeInterval:1];
        }
        NSLog(@"线程2结束");
    }
     
  • 相关阅读:
    小程序中上传图片并进行压缩
    vue在传值的时候经常遇到的问题
    【H5】移动开发 rem
    【入门】Less 知识点整理
    【入门】前后端交互
    原型对象、原型链
    跨域-jsonp、cors、iframe、document.domain、postMessage()
    css水平垂直居中
    localStorage、sessionStorage、cookie、session
    vue中父组件调用子组件函数
  • 原文地址:https://www.cnblogs.com/huoxingdeguoguo/p/4678140.html
Copyright © 2020-2023  润新知