1.   .net的公共语言运行时(CLR)能够区别两种不同类型的线程:前台线程和后台线程。前台线程与后台线程的区别:

应用程序必须运行完所有的前台线程才可以退出。而对于后台线程,应用程序则可以不考虑其是否已经运行完毕而直接退出。所有的后台线程在应用程序退出后都会自动结束。

主线程是一个前台线程。

2.程序与进程、线程:

程序:计算机指令的集合。是属于静态的,不受操作系统的调度。它以文件的形式存储在磁盘上。

进程:运行中的程序。执行计算机指令的集合的过程。是系统进行调度和分配资源的独立单元。

一个程序加载到内存,系统就创建了一个进程、执行结束后,该进程也就消亡了。

线程:轻量级进程,即讲一个程序被分解为多个进程共同完成程序的任务,那么被分解的进程就是线程。由操作系统负责调度。拥有独立的执行控制。

单线程:如果一个程序只有一个进程就可以处理所有的任务,那么它就是单线程。线程是CPU的分配单位。

进程与线程的区别:线程没有独立的存储空间,而是和所属进程的其他线程共享一个存储空间。这使得线程间的通信较简单。

进程与进程之间的通信:调用的接口。

3.多任务

多任务:系统可以同时运行多个进程。操作系统能够同时运行几个线程,这种能力称为多任务处理。

4.引入线程的好处

1.创建一个新线程花费的时间少。

2.两个线程的切换时间少。

3.由于同一个进程内的线程共享内存和文件。所以线程之间互相通信必须调用内核。

4.线程能独立执行,能充分利用和发挥处理机与外围设备并行工作。

转载于:https://blog.51cto.com/gyy213/674507

程序、进程、线程之间的区别相关推荐

  1. 线程知识点(一)—— 程序、进程、线程之间的区别与联系、Java的线程状态和生命周期

    1 程序.进程.线程之间的区别与联系 三者之间的形象化理解: * 程序:代码实现了功能,就是程序,是静态的: * 进程:执行中的程序就是进程,是动态的: * 线程:进程内的一个执行单元,也是进程内的可 ...

  2. CPU核心数线程数、程序进程线程、并发并行的简单理解

    CPU核心数线程数.程序进程线程.并发并行.简单理解和区分 这篇文章是对上述感念的简单理解,想深入研究可以看看<计算机组成原理> CPU的核心数 线程数 当我们买电脑的时候,会看到CPU的 ...

  3. 02 线程简介 多任务 多线程 普通方法调用和多线程 程序.进程.线程 Proces与Thread 核心概念

    线程简介 任务,进程,线程,多线程 多任务 多任务处理是指用户可以在同一时间内运行多个应用程序,每个应用程序被称作一个任务 多线程 原来是一条路,慢慢因为车太多了,道路堵塞,效率极低. 为了提高使用的 ...

  4. 管程,进程及线程之间的区别

    1,首先我们先了解进程.线程.管程各自的概念: 进程:进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动.它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基 ...

  5. 进程与线程之间的区别及联系

    一.定义:     1.进程:进程是一个具有独立功能的程序关于某个数据集合的以此运行活动. 是系统进行资源分配和调度的独立单位,也是基本的执行单元.是一个动态的概念,是一个活动的实体.它不只是程序的代 ...

  6. Python多任务(8.进程与线程之间的区别以及多进程和多线程的区别 )

    1. 进程.线程的对比 进程,能够完成多任务,比如:  一台电脑上可以运行登录多个QQ 线程,能够完成多任务,比如: 一个QQ中可以和有多个聊天窗口 进程里面包含线程,线程不能够独立执行,必须依存在进 ...

  7. python进程线程协程区别_进程和线程、协程的区别

    现在多进程多线程已经是老生常谈了,协程也在最近几年流行起来.python中有协程库gevent,py web框架tornado中也用了gevent封装好的协程.本文主要介绍进程.线程和协程三者之间的区 ...

  8. python进程线程协程区别_Python中 进程 线程 协程

    一.进程 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础.在早期面向进程设计的计算机结构中,进程是程序的基本执行实体:在 ...

  9. python进程线程协程区别_Python3多线程与协程

    python中的多线程非常的常用,之前一直糊里糊涂地使用,没有一些系统性的概念,记录一下~ 0x001 多线程的优势:可将长时间占用的程序放到后台 可能会加速程序执行速度 能够实现一些类似同步执行的效 ...

最新文章

  1. android 背景图太大,android – 背景图片需要太长时间才能画(Canvas)Jerky Sprites ……?...
  2. 【转】常见浏览器兼容性问题与解决方案css篇
  3. c# treeview查找并选中节点_最通俗易懂的二叉查找树(BST)详解
  4. 嵌入式软件工程师2021面试指南【转】
  5. 软考路:2021年系统架构设计师之心得
  6. 基于WebSocketSharp 的IM 简单实现
  7. angular 实现modal windows效果(即模态窗口,半透明的遮罩层),以及bootstrap(css,components,js)的初步学习...
  8. python爬虫从入门到放弃-python爬虫从入门到放弃(二)之爬虫的原理
  9. RVA和文件偏移的转换
  10. 近6年被引用次数最多的深度学习论文top100(附下载地址)
  11. 怎么拷贝计算机桌面,电脑怎么拷贝软件
  12. web项目连接阿里云云数据库RDS-MySQL8.0
  13. 18-19款迈巴赫S400改装原厂3D大柏林之声,天籁之音
  14. PS压缩1寸照片大小降低到50KB以下的方法
  15. unity实现炮弹运动轨迹(抛物线)
  16. 简要讨论python在拼多多关键字搜索、商品详情API接口做好电商选品的作用
  17. 我对社交电商的了解与看法
  18. html5 声控游戏,用声音来放大招吧!10款独具创意的声控游戏
  19. 九天·毕昇 试玩体验
  20. vue video播放m3u8源

热门文章

  1. java代码上传到私服,java生成 java代码 上传maven私服
  2. mysql vim_MySQL的安装配置
  3. 瓦力机器人故障维修_大眼萌!5G巡逻机器人亮相乌镇,24小时值守互联网大会...
  4. python连通域标记_pythonamp;#8212;二值图像连通域标记 - 易采站长站
  5. python任务调度框架_python任务调度框架apscheduler【转】
  6. python多个判断条件_Python基础介绍 | 条件判断Conditionals
  7. Vue后台管理系统实现登录功能
  8. 大数据审计的发展_从历史的角度看大数据审计发展
  9. plt title设置在下方_Python数据分析:可视化图表注释设置
  10. linux开发板蓝牙连接,开发板蓝牙通信问题,有这方面经验的请进