• ios30---pthread, NSThread, GCD, NSOperation


    pthread(线程库,很早就有的技术,了解):
    一套通用的多线程API
    适用于UnixLinuxWindows等系统(java开发也有pthread)
    跨平台可移植
    使用难度大(全是C函数)

    C语言

    程序员管理线程生命周期,几乎不用

    NSThread(掌握):
    使用更加面向对象
    简单易用,可直接操作线程对象

    OC语言

    程序员管理线程生命周期(管生不管死),偶尔使用

    GCD(功能强大,重点):
    旨在替代NSThread等线程技术
    充分利用设备的多核(特点)

    c语言

    自动管理线程生命周期,经常使用


    NSOperation(重点):
    基于GCD(底层是GCD)
    比GCD多了一些更简单实用的功能
    使用更加面向对象

    OC语言

    自动管理线程生命周期,经常使用

    //
    //  ViewController.m
    //  02-了解-pthread简单使用
    //
    //  Created by xiaomage on 16/2/18.
    //  Copyright © 2016年 小码哥. All rights reserved.
    //
    
    #import "ViewController.h"
    #import <pthread.h>
    
    @interface ViewController ()
    
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
    
       
    }
    
    - (IBAction)btnClick:(id)sender {
    
        
        
    //    NSLog(@"%@",[NSThread currentThread]);
        
        //1.创建线程对象,包含头文件#import <pthread.h>
        pthread_t thread;
        
        //2.创建线程函数
        /*
         第一个参数:线程对象 传递地址
         第二个参数:线程的属性 NULL
         第三个参数:指向函数的指针
         第四个参数:函数需要接受的参数
         */
        pthread_create(&thread, NULL, task, NULL);
        
        
    //    //1.创建线程对象
        pthread_t threadB;
    //    
    //    //2.创建线程函数
    //    /*
    //     第一个参数:线程对象 传递地址
    //     第二个参数:线程的属性 NULL
    //     第三个参数:指向函数的指针
    //     第四个参数:函数需要接受的参数
    //     */
        pthread_create(&threadB, NULL, task, NULL);
        
        pthread_equal(thread, threadB);
    
    }
    
    void* task(void* param)
    {
        for (NSInteger i = 0; i<2; i++) {
            NSLog(@"%zd----%@",i,[NSThread currentThread]);
        }
        
        NSLog(@"%@--------",[NSThread currentThread]);
        return NULL;
    }
    
    @end
  • 相关阅读:
    设计模式之结构型(6)-享元模式(Flyweight)
    设计模式之结构型(7)-代理模式(Proxy)
    设计模式之行为型(1)-职责链模式(Chain)
    设计模式之行为型(2)-命令模式(Command)
    设计模式之行为型(3)-解释器模式(Interpreter)
    设计模式之行为型(4)-迭代器模式(Iterator)
    设计模式之行为型(5)-中介者模式(Mediator)
    设计模式之行为型(6)-备忘录模式(Memento)
    设计模式之行为型(7)-观察者模式(Observer)
    设计模式之行为型(8)-状态模式(State)
  • 原文地址:https://www.cnblogs.com/yaowen/p/7488832.html
Copyright © 2020-2023  润新知