Windows技术篇——进程、线程、消息机制进程间通信[通俗易懂]

Windows技术篇——进程、线程、消息机制进程间通信[通俗易懂]概念192.168.0.1–192.168.0.255一、进程状态1、创建状态:进程由创建而产生。2、就绪状态:指进程已准备好运行状态,即进程已分配到除CPU以外所有的必要资源后,只要再获得CPU,合可立即执行。(有执行资格,没有执行权的进程)3、运行状态:指进程已经获取CPU,其进程处于正在执行的状态。(既有执行资格,又有执行权的进程)4、阻塞状态:指正在执行的进程由于发生某事件(如…


Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

概念

192.168.0.1–192.168.0.255

一、进程状态

1、创建状态:进程由创建而产生。
2、就绪状态:指进程已准备好运行状态,即进程已分配到除CPU以外所有的必要资源后,只要再获得CPU,合可立即执行。(有执行资格,没有执行权的进程)
3、运行状态:指进程已经获取CPU,其进程处于正在执行的状态。(既有执行资格,又有执行权的进程)
4、阻塞状态:指正在执行的进程由于发生某事件(如I/O请求,申请缓冲区失败等)暂时无法继续执行的状态,即进程执行受到阻塞。
5、终止状态:进程的终止也要通过两个步骤:首先,是等待操作系统进行善后处理,最后将其PCB清零,并将PCB空间返还给操作系统。

二、为何阻塞状态和就绪状态分开?

看定义可知

三、线程

是进程的一个执行单元,是进程内部调试的实体,比进程更小的独立运行的基本单位,线程也被称为轻量级进程。一个程序至少一个进程,一个进程至少一个线程。

四、为什么会有线程?

早期:在OS中一直都是以进程作为能拥有资源和独立运行的基本单位.后来人们又提出了比进程更小的能独立运行的基本单位-线程(Threads),试图通过它来提高系统内程序并发执行的程序,从而进一步提高系统的吞吐量.后来多处理机系统得到迅速发展,线程能比进程更好的提高程序的并发执行程序,充分发挥多处理机的优越性。

五、进程线程的区别?

地址空间:同一进程的线程共享本进程的地址空间,而进程之间则是独立的地址空间。
资源拥有:同一进程内的线程共享本进程的资源如内存、I/O、CPU等,但是进程之间的资源是独立的。
执行过程:每个独立的进程有一个程序运行的入口,顺序执行序列和程序入口,但是线程不能独立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制。线程是处理器调试的基本单位,但是进程不是。两者均可并发执行。

六、线程进程优缺点?

线程执行开销小,但是不利于资源的管理和保护,线程适合在SMP机器(双CPU系统)上运行;
进程执行开销大,但是能够很好的进行资源管理和保护,进程可以跨机器前移。

对资源的管理和保护要求高,不限制开销和效率时,使用多进程;
要求效率高,频繁切换时,资源的保护管理要求不是很高的时候,使用多线程;

八、多线程应用场景

常见浏览器、Web服务、Web请求、各种专用服务器(游戏服务器);
Servlen多线程、FTPd下载、多线程操作文件、数据库用到多线程;
分布式计算(tomcat内部采用多线程)。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170948.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 【WLAN】【基础知识】WIFI那些事儿之PMF

    【WLAN】【基础知识】WIFI那些事儿之PMFTaggedparameters->Tag:RSNInformation->RSNCapabilities:从assocreq中发现相关标志位没有使能,说明STA没有使能PMFRSNCapabilities:%0000000000000000[74-75]xx…………..Reserved……..0…….Managemen

    2022年5月10日
  • 计算机网络面试题总结

    计算机网络面试题总结一OSI与TCP/IP各层的结构与功能,都有哪些协议五层协议的体系结构1应用层域名系统HTTP协议2运输层运输层主要使用以下两种协议UDP的主要特点TCP的主要特点3网络层4数据链路层5物理层总结一下二TCP三次握手和四次挥手(面试常客)为什么要三次握手为什么要传回SYN传了SYN,为啥还要传ACK为什么要四次挥手…

    2022年5月11日
  • 入Silverlight QQ群者必读「建议收藏」

    入Silverlight QQ群者必读「建议收藏」建立本技术群的目的,是为拥有共同爱好的你们提供一个交流平台,我们在此相约同游,共同分享彼此的Silverlight与WPF开发技术心得经验,当然也可以讲饮讲食,一起FB……希望各群友可以相互尊重,文明上网,将本群建成一个和谐的大家庭。         正所谓国有国法、群有群规!希望大家配合遵守!           1.严禁攻击人身的言论;在群中公然侮辱他人、捏造事实诽谤他人、对他人进

    2022年7月17日
  • 元素守恒计算方法_元素个数怎么算

    元素守恒计算方法_元素个数怎么算给定一个整数数组 nums,按要求返回一个新数组 counts。数组 counts 有该性质: counts[i] 的值是 nums[i] 右侧小于 nums[i] 的元素的数量。示例:输入:nums = [5,2,6,1]输出:[2,1,1,0] 解释:5 的右侧有 2 个更小的元素 (2 和 1)2 的右侧仅有 1 个更小的元素 (1)6 的右侧有 1 个更小的元素 (1)1 的右侧有 0 个更小的元素提示:0 <= nums.length <= 10^5-10^4

    2022年8月9日
  • hive 修改字段类型和增加字段表

    hive 修改字段类型和增加字段表Hive表修改字段类型Altertable表名 changecolumn原字段名称 现字段名称 数据类型 新增字段表altertable表名addcolumns(字段名数据类型)  

    2022年5月16日
  • oracle数据库建表语句大全_sql server建表语句

    oracle数据库建表语句大全_sql server建表语句Oracle数据库建表语句#1.建表语句createtableCUST_INFO(CUST_IDVARCHAR(36)notnull,CUST_TYPEVARCHAR(50),CUST_NAMEVARCHAR(200),ID_NO…

    2022年9月8日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号