多线程(一)线程和进程的区别

article/2025/10/30 23:00:51

目录

  • 🍓 一,进程线和程的概念
  • 🍌二,为什么要有线程
    • (1)首先并发编程成为需求
    • (2)虽然进程也可以并编程,但是线程更轻量
    • (3)那么是不是线程创建越多越好
  • 🍑 三,进程和线程的关系
    • 什么是虚拟机栈,本地方法栈
  • 🍉四,线程和进程的区别(重点)
  • 🍒五,用户线程和守护线程区别

🍓 一,进程线和程的概念

线程: 一个线程是一个独立的执行流,每个线程之间都可以按照顺讯执行自己的代码. 多个线程之间 “同时” 执行着多份代码

public class ThreadDemo {public static void main(String[] args) {Thread thread = new Thread(new Runnable() {@Overridepublic void run() {//具体业务Thread thread1 = Thread.currentThread();System.out.println("名称:" + thread1.getName());}});//开启线程thread.start();}
}

从以上代码可以看出,每个线程都是一个独立的执行流

进程:一个在内存中运行的应用程序。每个进程都有自己独立的一块内存空间,一个进程可以有多个线程,比如在Windows系统中,一个运行的xx.exe就是一个进程

在这里插入图片描述

🍌二,为什么要有线程

(1)首先并发编程成为需求

当单核CPU遇到问题,还是会采用多核CPU,那么并发编程能更充分利用多核 CPU
资源

(2)虽然进程也可以并编程,但是线程更轻量

①创建线程比创建进程更快.
②销毁线程比销毁进程更快.
③调度线程比调度进程更快.

(3)那么是不是线程创建越多越好

不是的,当线程创建过多,会造成恶意争抢和线程过度调度,返回时就会降低执行效率

🍑 三,进程和线程的关系

一个进程中可以有多个线程,多个线程共享进程的堆和方法区 (JDK1.8 之后的元空间)资源,但是每个线程有自己的程序计数器、虚拟机栈 (线程私有)和 本地方法栈(线程私有)

什么是虚拟机栈,本地方法栈

(1)虚拟机栈:每个 Java 方法在执行的同时会创建一个栈帧用于存储局部变量表、操作数栈、常量池引用等信息。从方法调用直至执行完成的过程,就对应着一个栈帧在 Java 虚拟机栈中入栈和出栈的过程。
(2)本地方法栈:和虚拟机栈所发挥的作用非常相似,区别是: 虚拟机栈为虚拟机执行 Java 方法 (也就是字节码)服务,而本地方法栈则为虚拟机使用到的 Native 方法服务。 在 HotSpot 虚拟机中和 Java 虚拟机栈合二为一

🍉四,线程和进程的区别(重点)

  • 从属关系上:线程属于进程,而对于进程,则不属于线程
  • 共享方式:线程之间资源和地址空间是可以共享的,而进程之间的地址空间和资源是相互独立的
  • 描述的侧重点:线程是操作系统调度的最小单位,进程是系统分配资源的最小单位
  • 上下切换的速度:线程是比较快的,而相对于进程就比较慢
  • 操作对象:进程是操作系统操控,而线程是程序员可以用编码操纵

🍒五,用户线程和守护线程区别

  • Java程序的进程里有几个线程:主线程,垃圾回收线程(后台线程),守护线程等,在main线程是默认的非守护线程,也就是用户线程
  • 在用户线程创建线程也是用户线程
  • 在守护线程下创建的子线程也是守护线程

关系:当没有用户线程,那么守护线程也就没存在必要了
区别:JVM不等待守护线程执行完退出,JVM会等待用户线程执行完退出


http://chatgpt.dhexx.cn/article/XL9bBc5Z.shtml

相关文章

线程和进程的区别是什么?(2021最新)

首先用一句话概括线程和进程的区别是:进程和线程都是一个时间段的描述,是CPU工作时间段的描述。是运行中的程序指令的一种描述,这需要与程序中的代码区别开来。 做个简单的比喻:进程火车,线程车厢 线程在进程下行进&…

线程和进程的区别和联系

操作系统任何处理线程 1.先描述一个进程(明确出一个进程上面的一些相关的属性) 操作系统里面主要是通过c/c来实现的,此处的描述其实就是用的c语言中的"结构体"(操作系统中描述进程的这个结构体称为"PCB"(process control block)进程控制块。 2.再组…

进程和线程有什么区别?

从用户的角度来看,进程是正在运行的程序实例,而线程是进程中真正执行任务的基本单位。也就是说一个运行的程序至少包含一个进程,一个进程至少包含一个线程,线程不能独立于进程而存在。 进程 进程(Process&#xff09…

线程和进程有什么区别(简单介绍)

线程和进程有什么区别(简单介绍) 简单介绍 一、线程的基本概念 线程是进程中执行运算的最小单位,是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点在运行中必不可…

线程和进程的区别是什么?

本文转载自知乎 文章目录 1.进程和线程的定义2.二者的区别(解释1)3.两者的区别(解释2) 1.进程和线程的定义 线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是…

线程和进程的区别

1、线程和进程的区别 进程:是指一个内存中运行的应用程序(已经在内存中运行的程序). 一个进程都有一个独立的内存空间,一个电脑(手机)可以同时运行多个进程;进程也是程序的一次执行过程,是系统运行程序的基本单位; 线…

线程与进程,你真得理解了吗

线程与进程,你真得理解了吗 1 进程与线程的关系和区别2 并行与并发3 线程共享了进程哪些资源 相信大家面试时一定没少被一个问题刁难,那就是进程和线程的区别是什么?这个问题延申开来并不像表面那么简单,今天就来深入一探。 开始…

axure自定义文本框样式

axure中的文本框是我们经常使用的元件,但它本身对样式的设置很有限,不能设置边框样式、阴影等,不能满足我们制作高保真原型的需求,本文给大家介绍一下结合矩形元件自定义文本框样式。(PS:此处的“高保真”指…

html文本框左移动怎么设css,html---文本框样式;

一、一个单行文本框的例子 您的姓名: 您的E_mail: 输入口令: 二、检验用户输入的信息 三、制作一个留言簿 留 言 簿 姓名: E_mail: 留 言 html文本框参考样式 输入框景背景透明: 鼠标划过输入框,输入框…

html 文本域和文本框,html的文本框和文本域样式

如果前边几章学习的比较扎实的话,本节教程就相当容易了。下边先说一下文本框,文本框和文本域都是可以用css进行美化的。比如改变边框精细,颜色,添加背景色、背景图像等。请看下边的实例: .text1 { border:1px solid #f60; color:#03C;} .text2 { border:2px solid #390; w…

[微信小程序专题] 配置文本框样式、排版及点击页面跳转

欢迎点击「算法与编程之美」↑关注我们! 本文首发于微信公众号:"算法与编程之美",欢迎关注,及时了解更多此系列文章。 问题 如何更改小程序页面中的文本框颜色和边框样式? 如何实现多个文本框的排版? 如何实现点击一个文本框即跳转页面? 我们在使用一个小程序…

php输入文本框样式,【js】:检测用户输入、文本框默认样式设置、设计表格样式实现全选反选...

Topic 1 : 检测用户的输入 : 题目要求: 编写一个用户注册页面 检测用户名是否是6位以下,密码是否是8位以上,如果不满足要求高亮显示文本框 ; 代码如下 :用户注册页面 .bg {background-color: red; } //编写…

html语言文本框怎么做,HTML文本框参考样式

在网页设计中,常常要使用html文本框来收集一些用户信息或是制作登录页,虽然只是简单的输入框,但是如果加入一些美化设计会使你的页面看起来更加有吸引力,下面就给大家提供了一些html文本框的参考样式和常见的html操作技巧,希望对你的网页制作有帮助。首先我们先看看一个最…

vue改造textarea多行文本框样式

代码如下&#xff08;有注释&#xff09;,因为这个是h5&#xff0c;如果需要pc端的&#xff0c;自行把rem乘100转换成px <template> <div class"contain"><textarea v-model"textareaSeason"placeholder"请输入具体原因"class&q…

html input文本框样式,css设置input文本框样式代码实例_html/css_WEB-ITnose

css设置input文本框样式代码实例: 使用css设置input元素的样式是最为常用的操作之一&#xff0c;当然也是最为基础的操作&#xff0c;可能对于刚刚接触css的朋友还不够熟悉&#xff0c;下面就通过一段简单的代码历史演示一下如何设置文本框的样式&#xff0c;当然这个演示可能并…

CSS之文本框样式和水平居中

文章目录 1 CSS使用1.1 文本框样式1.1.1 鼠标一上去变成浅绿色1.1.2 文本框提示样式&#xff0c;鼠标点击获得焦点时提示内容消失1.1.3 input文本框样式1.1.4 只有下划线的文本框1.1.5 软件序列号式的输入框1.1.6 输入框景背景透明1.1.7 鼠标划过输入框&#xff0c;输入框背景色…

【Css】input输入文本框的样式大全和搜索框实例(图文和完整源码)

一、默认显示信息 <input type"text" required"required" placeholder" 请输入金额" name"u"onfocus"if(placeholder 请输入金额){placeholder}"onblur"if(placeholder){placeholder 请输入金额}"v-model:v…

文本框输入的样式

文本框文字的输入样式设计&#xff0c;这里分四种样式&#xff1a; 1、从左到右 2、从右到左 3、从中间到两边 4、两端对齐 效果如下&#xff1a; TextAlignAt.css文件&#xff1a; .left {text-align: left;border: 1px dotted black;width: 50%;}.right {text-align: r…

HTML滚动条

由于四象限中可能会有很多任务&#xff0c;可能会超出象限大小&#xff0c;所以需要加上滚动条。 一般是&#xff1a;overflow:auto这个属性; 同时简单介绍几种HTML滚动条代码&#xff1a; 1、向右滚动代码&#xff1a; <div id"colee_right" style"overf…

html中设置滚动条的样式

一、效果图 二、css ::-webkit-srollbar-track-piece{background:none;-webkit-border-radius:0;} ::-webkit-scrollbar{width:8px;height:8px;} ::-webkit-scrollbar-thumb:vertical{height:50px;background-color:#bbbbbb;-webkit-border-radius:4px;outline:0px solid #…