当前位置: 首页 > article >正文

【多线程-第一天-多线程的技术方案-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>

代码

//线程编号的地址


http://www.kler.cn/a/411761.html

相关文章:

  • Ubuntu安装不同版本的opencv,并任意切换使用
  • 抖音短视频矩阵源代码部署搭建流程
  • Linux进程与资源管理
  • IDEA无法创建java8、11项目创建出的pom.xml为空
  • 深入解析分布式遗传算法及其Python实现
  • 5. Autogen官网教程 (Tool Use)
  • React中事件处理和合成事件:理解与使用
  • [RabbitMQ] 保证消息可靠性的三大机制------消息确认,持久化,发送方确认
  • 写个添加球队和展示球队的功能--laravel与inertia
  • 多线程
  • 【含开题报告+文档+PPT+源码】基于Spring Boot+Vue的在线学习平台的设计与实现
  • 多级反馈队列调度算法
  • kafka生产者和消费者命令的使用
  • 深入解析下oracle date底层存储方式
  • 利用Java爬虫获取1688商品类目:技术解析与代码示例
  • python操作Elasticsearch
  • PHP md5函数 生成的字符串是多少位的
  • 一个开源轻量级的服务器资源监控平台,支持告警推送
  • 应用商店双弹窗“APP在向用户申请权限时未同步告知用户申请此权限的理由”驳回uni-app应用上线的解决方法
  • 从零开始学GeoServer源码(二)添加支持arcgis切片功能
  • 小程序-基于java+SpringBoot+Vue的网上花店微信小程序设计与实现
  • Android Toast信息定位分析介绍
  • 基于Matlab实现Gabo滤波器(源码)
  • java虚拟机——JVM中,内存的哪些区域被划分为线程私有、哪些区域是线程共享的
  • 从0开始深度学习(32)——循环神经网络的从零开始实现
  • 常用的数据结构