进程与线程的关系,进程调度的基本过程

目标:

1. 了解进程与线程的关系

2. 进程调度的基本过程


进程与线程的关系

在我们学习进程调度前,我们先了解一下进程与线程:

1.进程是线程的容器

进程包含线程,一个进程里可以有一个线程,也可以有多个线程。

多个线程可以在同一个进程内共享进程的资源,如内存和文件,以实现并发执行。

2.资源分配

进程是操作系统分配资源的基本单位,每个进程都有自己的内存空间,独立分配的CPU时间片,以及其他系统资源。

线程共享所属进程的资源,它们通常更轻量级,创建和切换线程的开销较小。

3.并发性

进程和线程都可以用于实现并发性!!!

多个进程可以在不同的地址空间中并发执行,而多个线程共享相同的地址空间。(可以更容易地共享数据和协同工作)

4.独立性

进程是相互独立的,一个进程挂掉不会影响其他进程。

线程的崩溃会影响同一进程下的其他线程。


进程调度的基本过程

1.进程或线程创建

进程通过创建不同的 java 虚拟机实际来实现,线程通过"java.lang.Thread" 类创建。

2.资源分配 

java 虚拟机管理线程和和进程的资源分配(cpu时间片,内存,其他系统资源)。

每个线程堆栈和程序计数器(共享相同的堆内存)。

3.线程调度 

确定哪个线程应该在CPU上执行(java虚拟机线程调度器)

4.线程状态 

就绪状态:线程已准备好执行

运行状态:线程正在执行

阻塞状态:线程被阻止等待某些条件

终止状态:线程已完成执行

5.调度策略 

决定哪个线程应该执行(java虚拟机线程调度器)

6.线程同步 

java中提供同步机制:锁,条件变量,确保多个线程之间的正确协调和共享资源的安全访问。这有助于避免竞态条件和死锁等问题(后面我会再整理死锁问题)。

7.线程终止 

当线程完成其任务或出现异常时,它将进入终止状态。(可以正常终止或被强制终止)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/76305.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

分类模型训练pil、torchvision.transforms和opencv的resize

参考:https://blog.csdn.net/weixin_41012399/article/details/126049885 https://www.cnpython.com/qa/1291644 https://blog.csdn.net/weixin_44966641/article/details/125084573 https://blog.csdn.net/IEEE_FELLOW/article/details/115536987 训练时用pil读取图…

.net 7 隐藏swagger的api

1.写一个隐藏接口特性表示 using Microsoft.AspNetCore.Mvc.ApiExplorer; using Microsoft.OpenApi.Models; using Swashbuckle.AspNetCore.SwaggerGen;using System.Web.Http.Description;namespace JiaTongInterface.Filter {public class SwaggerApi : Swashbuckle.AspNet…

点云从入门到精通技术详解100篇-基于光谱共焦系统的三维点云数据处理

目录 前言 国内外研究现状 点云基础和相关技术研究 2.1 点云数据格式 2.1.1 LAS 格式

iframe 实现跨域,两页面之间的通信

一、 背景 一个项目为vue2,一个项目为vue3,两个不同的项目实现iframe嵌入,并实现通信 二、方案 iframe跨域时,iframe组件之间常用的通信,主要是H5的possmessage方法 三、案例代码 父页面-vue2(端口号为…

“投资教父”熊晓鸽老了,IDG光环不再

作者 | 鸠白 艺馨 排版 | Cathy 监制 | Yoda 出品 | 不二研究 2017年,世界互联网大会上,“投资教父”熊晓鸽问映客的创始人:“今年你们利润能有多少?” 对方笑答:“5个亿吧!” “才五个亿&#xff1f…

Kubernetes (K8s) 解读:微服务与容器编排的未来

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🐅🐾猫头虎建议程序员必备技术栈一览表📖: 🛠️ 全栈技术 Full Stack: &#x1f4da…

leetcode 234. 回文链表

2023.9.5 本题先将链表的节点值移到数组中,再用双指针去判断该数组是否为回文的即可。 代码如下: /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode() : val(0), next(nullptr) {}* …

细说GNSS模拟器的RTK功能(三)应用实例01——运行和分析模拟

在上期文章中我们介绍了基于RTCM插件来模拟RTCM使用的硬件和软件设置,本期文章我们将继续进行运行和分析模拟。 使用RTCM插件 运行和分析模拟 连接Ublox接收器 虽然采用了Novatel接收器进行模拟来获得更好的位置精度,但也同样适用于Ublox接收器。要将…

centos7 firewalld ip转发设置、安装docker-compose出现错误、docker-compose部署Yapi

一 centos7 firewalld ip转发设置 #!/bin/bash #开启系统路由模式功能 vim /etc/sysctl.conf #添加下面一行 net.ipv4.ip_forward1 #运行这个命令会输出上面添加的那一行信息,意思是使内核修改生效 sysctl -p #开启firewalld systemctl start firewalld #防火墙开启…

代码随想录算法训练营19期第49天

121. 买卖股票的最佳时机 视频讲解:动态规划之 LeetCode:121.买卖股票的最佳时机1_哔哩哔哩_bilibili 代码随想录 初步思路:贪心。 总结: 分别考虑2种情况: 【1】dp[i][0] 表示第i天持有股票所得最多现金 【2】…

【数据结构】前言概况 - 树

🚩纸上得来终觉浅, 绝知此事要躬行。 🌟主页:June-Frost 🚀专栏:数据结构 🔥该文章针对树形结构作出前言,以保证可以对树初步认知。 目录: 🌍前言:&#x1f3…

Pytorch Advanced(三) Neural Style Transfer

神经风格迁移在之前的博客中已经用keras实现过了,比较复杂,keras版本。 这里用pytorch重新实现一次,原理图如下: from __future__ import division from torchvision import models from torchvision import transforms from PIL…

零碎的c++二

虚函数 虚函数是C中实现多态的一种机制,它允许通过基类指针或引用来调用派生类的成员函数。虚函数的作用是实现动态绑定,即在运行时根据对象的实际类型来确定调用哪个函数。虚函数的声明方式是在函数前加上关键字virtual,如: cl…

Json“牵手”亚马逊商品详情数据方法,亚马逊商品详情API接口,亚马逊API申请指南

亚马逊平台是美国最大的一家网络电子商务公司,亚马逊公司是1995年成立,刚开始只做网上书籍售卖业务,后来扩展到了其他产品。现在已经是全世界商品品种最多的网上零售商和第二互联网公司,亚马逊是北美洲、欧洲等地区的主流购物平台…

数据结构:线性表之-循环双向链表(万字详解)

目录 基本概念 1,什么是双向链表 2,与单向链表的区别 双向链表详解 功能展示: 1. 定义链表 2,创建双向链表 3,初始化链表 4,尾插 5,头插 6,尾删 判断链表是否被删空 尾删代码 7&a…

我们这一代人的机会是什么?

大家好,我是苍何,今天作为专业嘉宾参观了 2023 年中国国际智能产业博览会(智博会),是一场以「智汇八方,博采众长」为主题的汇聚全球智能技术和产业创新的盛会,感触颇深,随着中国商业…

JVM相关知识点

Java可以跨平台的原因 Java可以跨平台的原因是因为它使用了Java虚拟机(JVM)作为中间层。Java源代码首先被编译成字节码,然后由JVM解释执行或即时编译成本地机器代码。这样,在不同的操作系统上,只需要安装适合该操作系…

9月11日作业

思维导图 代码 #include <iostream> #include<string.h>using namespace std;class myString { private:char *str; //记录c风格的字符串int size; //记录字符串的实际长度 public://无参构造myString():size(10){str new char[size]; …

从零学算法2849

2849.给你四个整数 sx、sy、fx、fy 以及一个 非负整数 t 。 在一个无限的二维网格中&#xff0c;你从单元格 (sx, sy) 开始出发。每一秒&#xff0c;你 必须 移动到任一与之前所处单元格相邻的单元格中。 如果你能在 恰好 t 秒 后到达单元格 (fx, fy) &#xff0c;返回 true &a…

目标检测YOLO实战应用案例100讲-毫米波辐射图像去模糊重建与目标检测(续)

目录 3.3基于RSRN模型的毫米波辐射图像去模糊重建方法 3.3.2非线性映射 3.3.3多尺度模糊提取