美文网首页
41. 进程和线程

41. 进程和线程

作者: 牛崽儿酷 | 来源:发表于2016-07-21 11:13 被阅读0次

真正的并行执行多任务只能在多核CPU上实现,但是,由于任务数量远远多于CPU的核心数量,所以,操作系统也会自动把很多任务轮流调度到每个核心上执行。

对于操作系统来说,一个任务就是一个进程(Process),比如打开一个浏览器就是启动一个浏览器进程,打开一个记事本就启动了一个记事本进程,打开两个记事本就启动了两个记事本进程,打开一个Word就启动了一个Word进程。

有些进程还不止同时干一件事,比如Word,它可以同时进行打字、拼写检查、打印等事情。在一个进程内部,要同时干多件事,就需要同时运行多个“子任务”,我们把进程内的这些“子任务”称为线程(Thread)。

由于每个进程至少要干一件事,所以,一个进程至少有一个线程。当然,像Word这种复杂的进程可以有多个线程,多个线程可以同时执行,多线程的执行方式和多进程是一样的,也是由操作系统在多个线程之间快速切换,让每个线程都短暂地交替运行,看起来就像同时执行一样。当然,真正地同时执行多线程需要多核CPU才可能实现。

如果我们要同时执行多个任务怎么办?
有两种解决方案:
一种是启动多个进程,每个进程虽然只有一个线程,但多个进程可以一块执行多个任务。
还有一种方法是启动一个进程,在一个进程内启动多个线程,这样,多个线程也可以一块执行多个任务。
当然还有第三种方法,就是启动多个进程,每个进程再启动多个线程,这样同时执行的任务就更多了,当然这种模型更复杂,实际很少采用。

相关文章

  • 41. 进程和线程

    真正的并行执行多任务只能在多核CPU上实现,但是,由于任务数量远远多于CPU的核心数量,所以,操作系统也会自动把很...

  • 线程和进程概念

    线程和进程 进程 线程 线程和进程的区别

  • 17_多线程

    =================线程和进程 =============进程 =============线程 ==...

  • OC-底层原理 23:多线程原理

    本文的目的在于了解进程、线程、多线程、线程池等的基本概念及原理 线程 和 进程 线程和进程的定义 线程 线程时进程...

  • iOS 多线程原理

    本文的目的在于了解进程、线程、多线程、线程池等的基本概念及原理 线程 和 进程 线程和进程的定义 线程 线程时进程...

  • 线程

    线程和进程 进程 线程 线程和进程的区别 线程的好处和坏处 创建线程的方式一 线程中常用的方法 代码实例 创建线程...

  • iOS底层原理24:多线程原理

    本文的目的在于了解进程、线程、多线程、线程池等的基本概念及原理 线程和进程 线程和进程的定义 线程 线程是进程的基...

  • 多线程

    线程和进程的概念: 进程:正在运行的应用就是一个进程线程:进程中执行每个任务的是线程 进程和线程的关系: 一个进程...

  • 面试复习——Android工程师之Java面试题

    1、进程和线程 地址空间和其他资源:进程间相互独立,进程中包括多个线程,线程间共享进程资源,某进程内的线程在其他进...

  • 多线程介绍

    线程和进程 线程和进程的定义 线程:线程是进程的基本执行单元,一个进程的所有任务都在线程中执行进程要想执行任务,必...

网友评论

      本文标题:41. 进程和线程

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