美文网首页iOS DeveloperiOS精英班
iOS多线程之一:基本概念

iOS多线程之一:基本概念

作者: s_在路上 | 来源:发表于2016-08-29 14:20 被阅读81次

计算机操作系统都有的基本概念,以下概念简单方式来描述。

进程:就是一个正在执行的程序。
线程:是执行程序最基本的单元,它有自己栈和寄存器。

进程和线程的区别
进程和线程的主要差别在于它们是不同的操作系统资源管理方式,进程有独立的地址空间,一个进程崩溃后,在保护模式下不会对其它进程产生影响,而线程只是一个进程中的不同执行路径。线程有自己的堆栈和局部变量,但线程之间没有单独的地址空间,一个线程死掉就等于整个进程死掉,所以多进程的程序要比多线程的程序健壮,但在进程切换时,耗费资源较大,效率要差一些。但对于一些要求同时进行并且又要共享某些变量的并发操作,只能用线程,不能用进程。

并发:多个任务同时发生,需要被处理。比如,田径赛场上的起跑线上有多个运动员等待起跑。
并行:在某一个时间能够同时处理多个任务。比如,火车站开放了多个检票口,同一时间能够服务多个旅客。
串行:线程执行只能依次逐一先后有序的执行,串行中,一个任务的执行必须以上一个任务执行结束为前提。

串行和并行主要区别在于一个任务的执行是否以上一个任务的完成为前提。串行中,一个任务的执行必须以上一个任务执行结束为前提,并行中,一个任务的执行与上一个任务的执行状态无关。以排队买票为例,串行像单个买票队伍,单个卖票窗口,必须一个一个来,串行像单个买票队伍,多个卖票窗口,多个人可以同时买票。

同步:就是顺序往下执行。举例:烧完水后泡茶
异步:就是几件事情同时在执行。烧水的时候拿出茶具,洗茶具,然后泡茶。其中烧水和拿茶具,洗茶具是同时进行的。

二、iOS多线程方案

iOS中其实目前有4套多线程方案,他们分别是:
1、pthreads
2、NSThread
3、GCD
4、NSOperation & NSOperationQueue

参考:(http://www.cnblogs.com/lmule/archive/2010/08/18/1802774.html)

相关文章

  • iOS原理(八)----多线程

    iOS原理(八)----多线程 基本概念 iOS常见的多线程方案有以下四种: pthread:是一套通用的多线程C...

  • iOS多线程之NSThread

    前面总结了多线程基本概念和iOS多线程PThread的使用,下面接着总结iOS多线程的另外一种实现方案NSThre...

  • iOS开发多线程那些事儿

    iOS中的多线程 iOS中多线程实现的多种技术方案: 多线程的两组基本概念 串行(Serial):在固定时间内只能...

  • iOS 多线程

    前言:这可能是史上最全面的一篇iOS 多线程博客了(王婆卖瓜一番?),从多线程的基本概念,进程的概念,引出iOS中...

  • iOS多线程之一:基本概念

    计算机操作系统都有的基本概念,以下概念简单方式来描述。 进程:就是一个正在执行的程序。线程:是执行程序最基本的单元...

  • iOS多线程浅汇-实战篇

    一、前言 上一篇文章iOS多线程浅汇-原理篇中整理了一些有关多线程的基本概念。本篇博文介绍的是iOS中常用的几个多...

  • iOS多线程相关面试题

    iOS多线程demo iOS多线程之--NSThread iOS多线程之--GCD详解 iOS多线程之--NSOp...

  • 多线程之--NSOperation

    iOS多线程demo iOS多线程之--NSThread iOS多线程之--GCD详解 iOS多线程之--NSOp...

  • iOS多线程之--NSThread

    iOS多线程demo iOS多线程之--NSThread iOS多线程之--GCD详解 iOS多线程之--NSOp...

  • iOS 多线程

    ​ 前言:这可能是史上最全面的一篇iOS 多线程博客了(王婆卖瓜一番?),从多线程的基本概念,进程的概念,引出i...

网友评论

    本文标题:iOS多线程之一:基本概念

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