java多线程的使用

news2024/10/7 10:22:19
在这里插入图片描述

温故而知新 --- Java多线程

    • 1. 关键字
      • 1.1 并发与并行
      • 1.2 进程和线程
    • 2. Java 线程
      • 2.1 Java的主线程
      • 2.2 线程声明周期
    • 3. Java 线程三种实现
      • 1.1 Big Data -- Postgres
    • 3. Java 线程三种实现
      • 1.1 Big Data -- Postgres
    • 4. Awakening
      • 1.1 Big Data -- Postgres


在这里插入图片描述
在这里插入图片描述

在这里插入图片描述


1. 关键字

1.1 并发与并行

  • 并发(concurrency)是在同一时间段,多个任务都在执行。宏观上是同时执行,微观上是顺序地交替执行
  • 并行(parallellism)是一组程序按独立异步的速度执行,无论从微观还是宏观,多个任务都是同时执行的

简单举个例子:主要看是否是同时

  • 你吃饭吃到一半,电话来了,你一直吃完以后才可以去接,这就说明你不支持并发也不支持并行。
  • 你吃饭吃到一半,电话来了,你停下吃饭去接电话,接完后继续吃饭,这说明你支持并发。(可以不同时)
  • 你吃饭吃到一半,电话来了,你一边打电话一边吃饭,这说明你支持并行(必须同时)

1.2 进程和线程

  • 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础
  • 线程(英语:thread)是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务

简单举个例子:

  • 开机后,打开chrome浏览器是开启一个进程。
  • 我同时浏览四个网页,这就是多线程。
    在这里插入图片描述

2. Java 线程

2.1 Java的主线程

每个java程序都含有一个线程,那就是主线程(main线程)。Java应用程序都是从主类main方法执行的,当jvm加载代码,调动方法之后,就会启动一个线程,这个线程就是主线程,负责执行main方法。如果在主线程里面创建其他线程,就会在主线程和其他线程来回切换,直到其他所有线程结束才会结束主线程

2.2 线程声明周期

在线程的声明周期中,要经过新建(New),就绪(Runnable),运行(Running),阻塞(Blocked)和死亡(Dead)5种状态

  • 新建状态:线程对象声明和创建,未被执行之前。
  • 就绪状态:处于新建状态的线程被启动后进入线程队列排队等待CPU时间片。
  • 运行状态:就绪状态的线程被调度并获得CPU资源。
  • 阻塞状态:在特殊情况下让出CPU资源暂时中止自己的执行。
  • 消亡状态:线程执行完成或者程序停止运行。
    在这里插入图片描述

3. Java 线程三种实现

1.1 Big Data – Postgres

3. Java 线程三种实现

1.1 Big Data – Postgres

4. Awakening

1.1 Big Data – Postgres

         在一秒钟内看到本质的人和花半辈子也看不清一件事本质的人,自然是不一样的命运。
在这里插入图片描述

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

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

相关文章

【图卷积网络】02-谱域图卷积介绍(一)

注:本文为第2章谱域图卷积介绍视频笔记,仅供个人学习使用 目录1、图卷积简介1.1 图卷积网络的迅猛发展1.2 回顾,经典卷积神经网络已在多个领域取得成功1.3 两大类数据1.4 经典卷积神经网络的局限:无法处理图数据结构1.5 将卷积扩展…

Linux查看本机状况命令

1.ip addr 查看自己的网络地址,网卡等情况 ping:查看网络可用性 2.top 查看当前计算机的cpu运行状况 在top状态下按1,可以查看自己的cpu是几核的 (下图中红框的值是空闲率,用100-空闲率就是CPU使用率,单位为%&…

sql调优相关

目录 1.调优步骤 2.小表驱动大表 3.order by 优化 4.group by优化 1.调优步骤 慢查询的开启并捕获explain慢SQL分析show profile查询SQL在Mysql服务器里面的执行细节和生命周期情况SQL数据库服务器的参数调优 2.小表驱动大表 EXISTS SELECT ... FROM table WHERE EXISTS (su…

10. 好客租房-RocketMQ快速入门[非项目必需]

本章节主要是学习RocketMQ, 目标快速入门, 能够回答或解决以下问题:了解什么是RocketMQ了解RocketMQ的核心概念动手安装RocketMQ服务快速入门,掌握RocketMQ的api使用对producer、consumer进行详解了解RocketMQ的存储特点10.1 RocketMQ简介与安装10.1.1 核心概念速通…

分享143个ASP源码,总有一款适合您

ASP源码 分享143个ASP源码,总有一款适合您 下面是文件的名字,我放了一些图片,文章里不是所有的图主要是放不下..., 143个ASP源码下载链接:https://pan.baidu.com/s/1Fd3_qaHDj2_BuslyFT8YVQ?pwdrjmi 提取码&#x…

数据库02_函数依赖,范式---软考高级系统架构师008

1.首先我们来看这个,给定一个X,能确定一个Y那么就说,X确定Y,或者Y依赖x,那么 比如y = x * x 就是x确定y,或者y依赖于x 2.然后再来看图,那么左边的部分函数依赖,就是,通过A和B能决定C,那么如果A只用给就能决定C,那么就是部分函数依赖. 3.然后再来看,可以看到,A可以决定B,那么…

文件(2)

1)指定一个目录,扫描这个目录,找到当前目录下面所有文件的文件名是否包含了指定字符的文件,并提示这个用户是否要删除这个文件,根据用户的输入来决定是否删除; 1.1)需要进行输入一个目录,还需要进行输入一个…

概论_第7章_参数估计

参数估计的形式有两种: 点估计和区间估计 1 点估计 设x1,x2,...xnx_1, x_2, ... x_nx1​,x2​,...xn​是来自总体的一个样本, 我们用一个统计量 θ^\hat\thetaθ^ θ^(x1,x2,...,xn)\hat\theta(x_1, x_2, ..., x_n)θ^(x1​,x2​,...,xn​)的取值作为…

[ 云原生 | 容器 ] 虚拟化技术之容器与 Docker 概述

在云计算中,虚拟化技术一般可以被分为两类,分别是虚拟机(VM,Virtual Machine)技术以及容器(Container)技术,这里我们只讲云原生中 Docker 虚拟化技术。 文章目录一、应用部署方式的变…

Kubernetes:基于命名行终端/ Web 控制台的管理工具 kubebox

写在前面 kubebox 是一个轻量的 k8s 管理工具,可以基于命令行终端或 Web 端博文内容涉及:kubebox 不同方式的安装下载,简单使用。如果希望轻量一点,个人很推荐这个工具,轻量,而且使用简单。理解不足小伙伴帮…

Pointofix安装与设置为中文

Pointofix用来桌面绘图,还可以放大桌面一、下载官网下载地址:https://www.pointofix.de/,点击箭头所指跳转页面点击下载安装包pointofix180de-20180511-setup.zip,语言包pointofix-translation-20220120.zip二、安装解压pointofix…

【学习笔记】[AGC022F] Checkers

首先不考虑算重,因为这题坑点在于当n≥5n\ge 5n≥5时不同结构的树可能生成相同的结果。 那么我们考虑生成不同的系数序列AAA,然后用可重集算一下方案数。考虑将−1-1−1的边缩去后所形成的树,第iii层的点表示的是2i2^i2i,那么如何…

基于微信小程序的新生自助报到系统小程序

文末联系获取源码 开发语言:Java 框架:ssm JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7/8.0 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Maven包:Maven3.3.9 浏览器…

蓝桥杯-刷题-补基础(加强版)

🌼feels good😃串烧 - 许天昱/陈旭辉-nn/单子玹/蒋笛含 - 单曲 - 网易云音乐 🌼10道入门题 --- 明显比上篇博客难了一点,要慢慢做了 目录 一,第k个素数 二,最大公约数 三,最小公倍数 四…

Mybatis-Plus 多记录操作与逻辑删除

目录 多记录操作 逻辑删除 问题引入 所以对于删除操作业务问题来说有: 实现步骤 逻辑删除,对查询有没有影响呢? 如果还是想把已经删除的数据都查询出来该如何实现? 多记录操作 程序设计出来一个个删除的话还是比较慢和费事的,所以一般会给用户一…

OpenMP Parallel Construct 实现原理与源码分析

OpenMP Parallel Construct 实现原理与源码分析 前言 在本篇文章当中我们将主要分析 OpenMP 当中的 parallel construct 具体时如何实现的,以及这个 construct 调用了哪些运行时库函数,并且详细分析这期间的参数传递! Parallel 分析——编…

逆序遍历List集合

1 问题手写一个程序,完成List集合对象的逆序遍历2 方法创建List接口的多态对象向创建好list集合添加元素使用hasPrevious方法。import java.util.ArrayList;import java.util.List;import java.util.ListIterator;public class TestList { public static void ma…

如何好好说话第11章 攀登抽象之梯

在心里面放一把抽象之梯我们要时刻去概括。从更宏观的角度去理解我们当前所处的事情。抽上之梯的这个概念,在写作教材中常常出现。他指引我们写作的时候,不要站在梯子的中间。要么具体详实,要么抽象而精简短小。为什么不要站在梯子中间呢&…

蓝桥杯 stm32 MCP4017

本文代码使用 HAL 库。 文章目录前言一、MCP4017 的重要特性二、MCP4017 计算 RBW 阻值三、MCP4017 地址四、MCP4017 读写函数五、CubeMX 创建工程 (利用 ADC 测量 MCP4017 电压)、对应代码:总结前言 一、MCP4017 的重要特性 蓝桥杯 板子上…

冯诺依曼体系结构及操作系统(OS)的简单认识

文章目录冯诺依曼体系结构操作系统(Operator System)冯诺依曼体系结构 冯诺依曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储结构。数学家冯诺依曼提出了计算机制造的三个基本原则,即采用二进制逻辑…