自学内容网 自学内容网

【多线程-第一天-多线程的技术方案-pthread演示 Objective-C语言】

一、多线程的技术方案

1.我们来看一下多线程的技术方案

通知

技术方案

pthread:一套通用的多线程API、适用于Unix\Linux Windows等系统、跨平台、可移植、使用难度大、C语言、线程的生命周期由程序员管理、使用频率:几乎不用

NSThread:使用更加面向对象、简单易用、可直接操作线程对象、OC语言、线程的生命周期由程序员管理、使用频率:偶尔使用

GCD:旨在替代NSThread等线程技术、充分利用设备的多核、C语言、线程的生命周期自动管理、使用频率:经常使用

NSOperation:基于GCD (底层是GCD)、比GCD多了一些更简单实用的功能、使用更加面向对象、OC语言、线程的生命周期自动管理、使用频率:经常使用

我们在iOS当中,可以使用以上四种方式来创建线程,

1)pthread:一套通用的多线程API,什么是API,是应用程序编程接口,其实就是一套函数、或是一套方法、因为它是C语言的,它里面提供的是函数、方法是属于对象的,函数不属于任何人,可以直接调用,方法是面向对象的、可以在Unix、Linux、Windows下用,为什么没写Mac呢,Mac是基于Unix的、线程生命周期需要程序员管理,那什么是生命周期呢,线程从创建到结束,中间经历的这一个过程,就是线程的生命周期,

pthread的线程生命周期,需要程序员来管理,不经常用,

2)NSThread:是Foundation中提供的一些类,更加面向对象,线程的生命周期也需要程序员来管理,因为NSThread,其实就是对pthread的封装,偶尔使用,

通知

3)GCD:旨在替代NSThread,因为NSThread,线程的生命周期需要程序员来管理,GCD不需要程序员来管理,GCD能够充分的利用设备的多核,GCD也是C语言开发的,所以它里边提供的也是一些函数,

4)NSOperation:是一个类,面向对象,基于GCD,也有GCD的一些优点,充分利用多核,生命周期自动管理,比GCD多了一些更简单实用的功能,经常使用,苹果推荐我们使用NSOperation,因为它面向对象,它也是基于GCD的,

二、pthread演示

1.pthread演示

通知

导入头文件#import <pthread.h>

代码

//线程编号的地址


原文地址:https://blog.csdn.net/madoca/article/details/144013669

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!