美文网首页
多线程学习

多线程学习

作者: 不吃鸡爪 | 来源:发表于2016-04-06 22:00 被阅读61次

    进程是指在系统中正在运行的一个应用程序。
    线程是进程的基本执行单元,一个进程(程序)的所有任务都在线程中执行。
    一个运行着的程序就是一个进程或者叫做一个任务,一个进程至少包含一个线程,线程就是进程的执行流。

    1.NSOperation简单介绍(文顶顶)
    2.GCD基础(文顶顶)
    • 只执行一次()
    static dispatch_once_t onceToken;
     dispatch_once(&onceToken, ^{
            // 程序运行中只执行1次的代码(这里面默认是线程安全的)
        });
    
    • 延时执行
    dispatch_time_t delayTime =dispatch_time(DISPATCH_TIME_NOW,(int64_t)(5*NSEC_PER_SEC));
       dispatch_after(delayTime, dispatch_get_main_queue(), ^{  
        });
    (如果是main_queue,则是在主线程运行,global_queue,会开辟一个新的线程)
    
    • 队列组
    dispatch_group_t group =  dispatch_group_create(); dispatch_group_async(group, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
            // 执行1个耗时的异步操作
            NSLog(@"11111111    %@",[NSThread currentThread]);
       });
    dispatch_group_async(group,dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
            // 执行1个耗时的异步操作
            NSLog(@"2222222    %@",[NSThread currentThread]);
       });
    
    3.多线程学习图
    多线程.png

    相关文章

      网友评论

          本文标题:多线程学习

          本文链接:https://www.haomeiwen.com/subject/grrmlttx.html