8_1、Java基本语法之多线程基本概念

news2024/10/5 16:26:35

一、涉及到多线程的基本概念

1、程序(programm)
        概念:是为完成特定任务、用某种语言编写的一组指令的集合。即指一 段静态的代码,静态对象。 

2、进程(process)
        概念:是程序的一次执行过程,或是正在运行的一个程序。
        说明:是一个动态 的过程:有它自身的产生、存在和消亡的过程。——生命周期

3、线程(thread)
        概念:进程可进一步细化为线程,是一个程序内部的一条执行路径。
        说明:线程作为调度和执行的单位,每个线程拥独立的运行栈和程序计数器(pc),线程切换的开销小 。

补充:
每个线程,拥有自己独立的:栈、程序计数器。
多个线程,共享同一个进程中的结构:方法区、堆。

线程与进程图示:(尚硅谷)

4、单核CPU与多核CPU的理解
        4.1、单核CPU,其实是一种假的多线程,因为在一个时间单元内,也只能执行一个线程 的任务。例如:虽然有多车道,但是收费站只有一个工作人员在收费,只有收了费 才能通过,那么CPU就好比收费人员。如果有某个人不想交钱,那么收费人员可以 把他“挂起”(晾着他,等他想通了,准备好了钱,再去收费)。但是因为CPU时 间单元特别短,因此感觉不出来。
        4.2、如果是多核的话,才能更好的发挥多线程的效率。(现在的服务器都是多核的)。一个Java应用程序java.exe,其实至少有三个线程:main()主线程,gc() 垃圾回收线程,异常处理线程。当然如果发生异常,会影响主线程。 
5、并行与并发的理解
并行:多个CPU同时执行多个任务。比如:多个人同时做不同的事。(进入一个体育馆,有很多个篮球场上同时进行篮球比赛)
并发:一个CPU(采用时间片)同时执行多个任务。比如:秒杀、多个人做同一件事。(我们关注所有比赛中的一场篮球赛)

二、使用多线程的优点

1、提高应用程序的响应。对图形化界面更有意义,可增强用户体验。

2、提高计算机系统CPU的利用率。

3、改善程序结构。将既长又复杂的进程分为多个线程,独立运行,利于理解和修改。

三、何时需要多线程

1、程序需要同时执行两个或多个任务。

2、程序需要实现一些需要等待的任务时,如用户输入、文件读写 操作、网络操作、搜索等。

3、需要一些后台运行的程序时。


 

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

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

相关文章

Cy7 Tyramide, Tyramide-Cy7,花青素Cy7 酪酰胺化学试剂供应

一:产品描述 1、名称 英文:Cyanine7 Tyramide,Cy7 Tyramide,Tyramide-Cy7 中文:花青素Cy7 酪酰胺 2、CAS编号:N/A 3、所属分类:Cyanine 4、分子量:802.01 5、分子式&#xff…

Docker学习6-Docker镜像commit操作案例

在上一篇中,我们知道了docker是基于联合文件系统的分层镜像。而且也知道了镜像是只读的,容器才是可以写的。那么,如果我们要修改镜像,修改之后,怎么提交呢?本文,凯哥将介绍,docker的…

svd分解

sklearn中svd分解 class sklearn.decomposition.TruncatedSVD(n_components2, *, algorithmrandomized, n_iter5, random_stateNone, tol0.0) 参数: n_components:整数,默认2 输出数据的所需维度。必须严格小于特征数。默认值对可视化很有用…

Git 操作 Gitea 出现 kex_exchange_identification: Connection closed by remote host

1. 问题背景 我的部分代码储存在使用 Gitea 搭建的服务上: DevWiki - 首页 - DevWiki Gitea 之前都是使用网页在网站上进行 仓库管理, 今天在clone代码的时候出现异常: kex_exchange_identification: Connection closed by remote host, 具体以下提示: $ git clone gitgit.d…

【案例分享】跨机房ES同步实战

背景 众所周知单个机房在出现不可抗拒的问题(如断电、断网等因素)时,会导致无法正常提供服务,会对业务造成潜在的损失。所以在协同办公领域,一种可以基于同城或异地多活机制的高可用设计,在保障数据一致性…

微软CTO谈AI:逃不掉马拉松就准备好跑鞋!30秒自动化妆机;ChatGPT刷爆票圈;剪纸风格的AI绘画 | ShowMeAI资讯日报

👀日报合辑 | 🎡AI应用与工具大全 | 🔔公众号资料下载 | 🍩韩信子 📢 对话微软 CTO 凯文斯科特 (Kevin Scott):人工智能将去向何方? https://blogs.microsoft.com/ai/a-conversation-with-kevi…

【卡塔尔世界杯】空调制冷,全是科技与狠活

半自动化越位技术比赛用球AI Rihla球场智能空调Feelix Palm辅助技术可持续利用的体育场便利的数字设施和App 西班牙队和英格兰队穿外套出场,卡塔尔的空调功率到底有多大? 还是很大的,不管是室外还是室内,到处都安装了空调&#…

Verilog系统函数

Verilog系统函数前言一、$width(一)简介(二)$width 参数(三)例子二、Specify参数三、$display(一)简介(二)格式说明(三)例子1.例12.例…

Bert论文解读及相关代码实践

Bert:Bidirectional Encoder Representations from Transformers Transformer中双向Encoder表达学习。BERT被设计为通过在所有层中对左右上下文进行联合调节,从未标记文本中预训练深度双向表示。预训练的BERT模型可以通过仅一个额外的输出层进行微调&am…

AVS-试听分割-论文阅读

题目: Audio-Visual Segmentation 论文地址:https://arxiv.org/abs/2207.05042 GitHub地址:https://github.com/OpenNLPLab/AVSBench 项目主页:https://opennlplab.github.io/AVSBench/ 相关博客https://arxiv.org/abs/2203.03821 摘要 We propose to explore a new pro…

(附源码)ssm汽车租赁 毕业设计 271621

基于ssm的汽车租赁平台的设计与实现 摘 要 随着社会经济的快速发展,我国机动车保有量大幅增加,城市交通问题日益严重。为缓解用户停车难问题,本文设计并实现了汽车租赁平台.该系统通过错峰停车达到车位利用率最大化.基于现状分析,本文结合实际停车问题,从系统应用流程,系统软硬…

微电网和直流电网中最优潮流(OPF)的凸优化(Matlab代码实现)

📋📋📋本文目录如下:⛳️⛳️⛳️ 目录 1 概述 2 最优潮流 3 电力系统强大的CVX 4 直流电网中最优潮流(OPF)的凸优化 4.1 Matlab代码 4.2 运行结果 5 微电网中最优潮流(OPF)的凸优…

go gin web综合教程,包括 mysql redis log 路由

前言 在学习go许久,没看到网上有比较综合的gin web教程,很多都是最基础的教程,完全就是启动个服务返回参数,没有过多的结合实际开发。下面我结合一下我的经验,来写一篇深入的综合教程,包括数据库Mysql、re…

JMeter启动时常见的错误

很多小伙伴在学工具这一块时,安装也是很吃力的一个问题,之前记得有说过怎么安装jmeter这个工具。那么你要启动jmeter的时候,一些粉丝就会碰到如下几个问题。 1.解压下载好的jmeter安装,Windows 平台,双击 jmeter/bin …

基于python实现的SGM半全局立体匹配算法

文章目录前言一、SGM是什么?1.代价计算2.代价聚合3.视察计算4.视察优化二、基于python实现SGM算法?总结前言 开始正是入门立体匹配算法啦,会不断更新立体匹配的算法和代码。   水平有限,旨在先了解和读懂别人的代码的实现方式&a…

3D立体匹配入门 - 视差计算

经典假设 1、左右视图成功匹配的窗口,具有相同的像素 这个是最经典的假设,几乎所有视差图计算都用上了他,通过匹配左右窗口像素,得到最佳匹配对应的x轴坐标差,就是视差 2、像素P的视差只与其领域有关 这个是基于马尔…

外汇天眼:即使与世界第一的差价合约提供商交易也会被骗!

你能想象,当你与世界第一的差价合约提供商进行交易时,也可能会被骗吗? 在投资理财多元化的今天,外汇投资理财也备受大家的关注,而与此同时,骗子的诈骗渠道也与时俱进,各类外汇投资骗局也层出不穷…

VMware Workstation 17.0 Pro SLIC Unlocker for Linux

VMware_Dell_2.6_BIOS-EFI64_Mod;macOS Unlocker,支持 macOS Ventura 请访问原文链接:VMware Workstation 17.0 Pro SLIC & Unlocker for Windows & Linux,查看最新版。原创作品,转载请保留出处。 作者主页&a…

多模式直方图的视网膜图像增强

论文题目:Retinal Image Enhancement in Multi-Mode Histogram 1 摘要 视网膜图像的评估被广泛用于帮助医生诊断许多疾病,如糖尿病或高血压。从采集过程来看,视网膜图像往往具有较低的灰度对比度和动态范围。本文提出了一种基于直方图分析的…

MySQL回表

1.索引结构 1.1.B-Tree(B树)和BTree(B树) 前面是B-Tree,后面是BTree,两者的区别在于: B-Tree中,所有的节点都会带有指向具体记录的指针;BTree中只有叶子节点才会带有指向具体记录的指针;B-Tree中,不同的叶子之间没有连在一起;BTree中所有的叶子节点通过指针连接在一起;B-Tree中…