美文网首页
多线程的基本概念

多线程的基本概念

作者: 幻世神码 | 来源:发表于2016-08-16 21:42 被阅读24次

什么是多线程呢?多线程有什么用呢?我们先看看与之相关的各种简单概念。

     第一个我们先说说什么是进程,进程顾名思义就是当前程序中正在跑的应用程序,比如说迅雷啊,QQ啊等应用程序。而一个进程要想执行各种任务,就必须要有线程(其中一个进程至少要有一条线程),一个进程中所有任务其实都在线程上执行。

进程

然而每一条线程任务的执行是串行的,所有如果要在一个线程中执行多个任务,那么只能一个一个顺序执行。所以可以认为线程是进程中的一条执行路径。

线程

多线程

一个进程中可以开启多条线程,每条线程可以并行(同时)执行不同的任务

-多线程的原理:

执行原理

同一时间,单核CPU只能处理一条线程,只有一条线程工作

多线程并发(同时)执行:其实是CPU快速地在多条线程之间调度(切换)

多线程的优缺点

优点:

能适当提高执行效率,提高资源的利用率

缺点:线程过多会消耗时间和空间资源,降低执行效率,开一条子线程512KB,主线程1M,开一条线程大概90毫秒。

如果开启大量线程,会降低程序的性能,线程越多,同一时间CPU的调度频率越少

程序设计更复杂:比如线程之间的通信和线程之间的数据共享等

主线程:程序开启后默认会开启一个线程叫主线程,又叫UI线程,主要处理UI事件,用户交互,界面刷新等任务

说了半天多线主要是用来干嘛的呢?其实说白了就是将耗时任务放到子线程中处理,主线程中主要处理用户的点击,交互,刷新UI等,用户就不会觉得的卡了,增强用户体验,和执行效率也在无形中获得提升,你说他屌不屌,一般我们在iOS开发中的多线程实现方案大概有以下4种。

iOS中多线程的实现

相关文章

  • iOS多线程之 pThread

    前面总结了多线程的基本概念,今天学习总结一下多线程的其中一种实现方案pThread 一、基本概念 pThread(...

  • iOS 多线程之GCD

    目录 GCD的基本概念 Dispatch Queue Dispatch Group 一、GCD的基本概念 多线程的...

  • iOS开发多线程篇--基本概念和创建方式

    目录 一 基本概念 二 OC中的多线程 一 基本概念 多线程按字面意思是同步完成多项任务,提高了资源的使用效率,从...

  • 高并发多线程总结

    1.多线程基本概念 首先,我们要理解多线程编程,必须清楚几个基本概念:进程——进程是操作系统层面的概念,它是操作系...

  • 2.iOS多线程

    多线程的四种解决方案:pthread,NSThread,GCD,NSOperation 一、多线程的基本概念进程:...

  • iOS - 多线程NSThread的使用

    一、多线程的基本概念: 1. 多线程的原理: 多线程是循环切换执行的 线程执行完毕之后会自动销毁 2. 多线程的优...

  • Chapter 10. 多线程

    阅读原文 Chapter 10. 多线程 10.1 多线程概述 基本概念:程序 - 进程 - 线程 程序(prog...

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

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

  • iOS多线程之NSThread

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

  • iOS开发多线程那些事儿

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

网友评论

      本文标题:多线程的基本概念

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