多线程

概念

进程

  • 计算机中已运行程序的实体。
  • 进程本身不会运行,是线程的容器。
  • 程序本身只是指令的集合,进程才是程序(那些指令)的真正运行。
  • 若干进程有可能与同一个程序相关系,且每个进程皆可以同步(循序)或不同步(平行)的方式独立运行。
  • 进程为现今分时系统的基本运作单位。1

线程

  • 操作系统技术中的术语,是操作系统能够进行运算调度的最小单位。
  • 它被包涵在进程之中,一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。

并发运行

  • 并发运行实现并发技术相当复杂,最容易理解的是“时间片轮转进程调度算法”,它的思想简单介绍如下:
  • 在操作系统的管理下,所有正在运行的进程轮流使用CPU,每个进程允许占用CPU的时间非常短(比如10毫秒),这样用户根本感觉不出来CPU是在轮流为多个进程服务,就好象所有的进程都在不间断地运行一样。2

并行运行

  • 并行是指“并排行走”或“同时实行或实施”。
  • 在操作系统中是指,一组程序按独立异步的速度执行,无论从微观还是宏观,程序都是一起执行的。
  • 对比地,并发是指:在同一个时间段内,两个或多个程序执行,有时间上的重叠(宏观上是同时,微观上仍是顺序执行)。
    多线程和多进程
  • 一个线程可以创建和撤销另一个线程;同一个进程中的多个线程之间可以并发执行
  • (轮流获取cpu的时间片,在总体上给人的感觉是同时在执行,这是并发,还有一个名词叫并行,就是多核多cpu,真正的同时在执行,不过现在实现难度有点大,在用处上主要用在并行计算)
  • 至少要有一个线程
  • 相对进程而言,线程是一个更加接近于执行体的概念,它可以与同进程中的其他线程共享数据,但拥有自己的栈空间,拥有独立的执行序列。

参考

全部评论

相关推荐

03-16 11:07
南开大学 Java
牛马人的牛马人生:快手卡实习经历的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
正在热议
更多
# AI面会问哪些问题? #
24847次浏览 491人参与
# 中国电信笔试 #
31080次浏览 283人参与
# 开放七大实习专项,百度暑期实习值得冲吗 #
14137次浏览 209人参与
# 你的实习产出是真实的还是包装的? #
18792次浏览 330人参与
# 如果秋招能重来,我会____ #
96691次浏览 500人参与
# 春招至今,你的战绩如何? #
59910次浏览 543人参与
# 厦门银行科技岗值不值得投 #
7485次浏览 186人参与
# i人适合做什么工作 #
36914次浏览 124人参与
# 我是面试官,请用一句话让我破防 #
79511次浏览 219人参与
# 哪些公司真双非友好? #
69200次浏览 287人参与
# 金三银四,你的春招进行到哪个阶段了? #
21567次浏览 277人参与
# 找AI工作可以去哪些公司? #
7673次浏览 186人参与
# 从事AI岗需要掌握哪些技术栈? #
7676次浏览 251人参与
# 投递几十家公司,到现在0offer,大家都一样吗 #
339915次浏览 2165人参与
# 面试尴尬现场 #
220755次浏览 861人参与
# 五一之后,实习真的很难找吗? #
102797次浏览 584人参与
# 你做过最难的笔试是哪家公司 #
30108次浏览 193人参与
# 你小时候最想从事什么职业 #
159840次浏览 2072人参与
# 应届生第一份工资要多少合适 #
20483次浏览 84人参与
# 阿里笔试 #
176460次浏览 1302人参与
# 一张图晒出你司的标语 #
3821次浏览 72人参与
# 面试被问期望薪资时该如何回答 #
382457次浏览 2163人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务