java多线程-1-测试一个多线程程序

多线程基本概念

进程:程序的基本执行实体


线程:操作系统能够进行运算调度的最小单位,包含在进程之中


多线程:在等待线程的时间,处理其他线程,提高计算机处理效率以减小资源的占用

并发:在同一时间,多个指令在单个 CPU 上交替进行

并行:在同一时间,多个指令在多个 CPU 上同时进行

多线程的基本使用

java Tread 类的实用:

public class Main {public static void main(String[] args) {ThreadText threadText1 = new ThreadText();threadText1.setName("测试线程1");ThreadText threadText2 = new ThreadText();threadText2.setName("测试线程2");//程序在执行打印语句时,两个线程被执行是随机的threadText1.start();threadText2.start();}
}

实现 TheadText 线程,继承 Thead 类,重新 run 方法

/*** 自定义线程*/
public class ThreadText extends Thread{@Overridepublic void run() {for(int i=0;i<100;i++){System.out.println( this.getName() + ": 花下的晚风");}}
}

运行结果:

测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程1: 花下的晚风
测试线程1: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风
测试线程2: 花下的晚风

Process finished with exit code 0
 

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

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

相关文章

【QT】QWidget 重要属性

文章目录 enabledgeometrywindowTitlewindowIconqrc 机制windowOpacitycursorfontQFont toolTip 和 toolTipDurationfocusPolicyQt::FocusPolicy styleSheet enabled 作用&#xff1a;设置控件是否可使用. true 表⽰可用, false 表⽰禁用. 对应的API bool isEnabled(); // 获…

揭秘遗传之谜:自闭症的遗传因素分析

在星贝育园这片充满爱与希望的土地上&#xff0c;我们不仅见证了无数自闭症儿童在康复训练中的点滴进步&#xff0c;更深刻理解了自闭症这一复杂疾病的多样性和挑战性。自闭症&#xff0c;也称为孤独症&#xff0c;是一种影响社交互动、语言和非语言交流以及行为模式的神经发育…

C++ 语言特性06 - lambda表达式

一&#xff1a;概述 1. 语法 [ captures ] ( params ) specifiers exception -> ret { body }其中&#xff1a;captures 是捕获列表&#xff0c;用于捕获当前函数作用域的变量&#xff0c;分为按值捕获和按引用捕获。params 是可选参数列表&#xff0c;和普通函数一样。spe…

通信工程学习:什么是CSMA/CA载波监听多路访问/冲突避免

CSMA/CA&#xff1a;载波监听多路访问/冲突避免 CSMA/CA&#xff08;Carrier Sense Multiple Access/Collision Avoidance&#xff09;&#xff0c;即载波监听多路访问/冲突避免&#xff0c;是一种用于数据传输时避免各站点之间冲突的算法&#xff0c;尤其适用于无线局域网&…

python格式化输入输出

以下是使用 format()、f-string 和百分号 % 运算符进行 Python 数据格式化输入输出的示例代码。 1. 使用 format() 方法进行格式化 # 使用 format() 方法格式化数据并输出到文件 name "Alice" age 25 score 92.5# 格式化字符串 formatted_string "Name: {…

2022年6月 Frontier 获得性能第一的论文翻译

为百万兆级加速架构做高性能 Linpack 优化 摘要 我们详细叙述了在 rocHPL 中做的性能优化&#xff0c;rocHPL 是 AMD 对 HPL 基准的开源实现&#xff0c;主要是针对节点进行优化的架构&#xff0c;是为百万兆级系统而设计的&#xff0c;比如&#xff1a;Frontier suppercomput…

深蕾半导体Astra™ SL1620详细介绍,嵌入式物联网处理器

一&#xff0c;SL1620是什么 Astra™ SL系列是深蕾半导体推出的高度集成的嵌入式物联网处理器SoC&#xff08;System on Chip&#xff09;系列产品&#xff0c;专为多模式消费者、企业和工业物联网工作负载而设计。SL1620是Astra™ SL系列中的一款成本和功耗优化的安全嵌入式So…

Windows 11 安装配置 Git 教程

目录 Git Windows 11 环境安装配置 Git Git Git是一个开源的分布式版本控制系统&#xff0c;由Linus Torvalds创建&#xff0c;用于有效、高速地处理从小到大的项目版本管理。Git是目前世界上最流行的版本控制系统&#xff0c;广泛应用于软件开发中。 以下是Git的一些关键特…

【C#】CacheManager:高效的 .NET 缓存管理库

在现代应用开发中&#xff0c;缓存是提升性能和降低数据库负载的重要技术手段。无论是 Web 应用、桌面应用还是移动应用&#xff0c;缓存都能够帮助减少重复的数据查询和处理&#xff0c;从而提高系统的响应速度。然而&#xff0c;管理缓存并不简单&#xff0c;尤其是当你需要处…

使用RestTemplate调用EMQX API查询MQTT客户端列表信息

项目中集成mqtt客户端查询功能&#xff0c;使用到了EMQX api-v5&#xff0c;具体步骤&#xff1a; 一、准备工作 首先在EMQX dashboard中添加API 密钥 填写密钥名称&#xff0c;点击确定&#xff0c;会生成API Key和Secret Key&#xff0c;保存起来备用。 二、配置文件 在…

AWS Network Firewall - IGW方式配置只应许白名单域名出入站

参考链接 https://repost.aws/zh-Hans/knowledge-center/network-firewall-configure-domain-ruleshttps://aws.amazon.com/cn/blogs/networking-and-content-delivery/deployment-models-for-aws-network-firewall/ 1. 创建防火墙 选择防火墙的归属子网&#xff08;选择公有…

基于Hive和Hadoop的共享单车分析系统

本项目是一个基于大数据技术的共享单车分析系统&#xff0c;旨在为用户提供全面的单车使用信息和深入的出行行为分析。系统采用 Hadoop 平台进行大规模数据存储和处理&#xff0c;利用 MapReduce 进行数据分析和处理&#xff0c;通过 Sqoop 实现数据的导入导出&#xff0c;以 S…

【JavaEE】http/https 超级详解

&#x1f525;个人主页&#xff1a; 中草药 &#x1f525;专栏&#xff1a;【Java】登神长阶 史诗般的Java成神之路 &#x1f98a;一.定义 HTTP&#xff08;HyperText Transfer Protocol&#xff09;即超文本传输协议&#xff0c;他是应用非常广泛的应用层协议&#xff0c;是…

【C#】StructLayout的使用

StructLayout 属性在 C# 中主要用于定义结构体或类在内存中的布局方式&#xff0c;这对于与非托管代码&#xff08;例如通过 P/Invoke 调用的 Win32 API&#xff09;进行交互时非常重要。StructLayout 属性位于 System.Runtime.InteropServices 命名空间下。使用此属性可以确保…

C语言、Eazy_X——五子棋

//五子棋#include<graphics.h>#define board_size 20 #define pixel 600 int pr pixel / board_size; char board_data[board_size][board_size]; char current_piece o; int count 0;//检测指定玩家是否获胜 bool CheckWin(char c) {int i, j;//检查行for (i 0; i &…

线程池:线程池的实现 | 日志

&#x1f308;个人主页&#xff1a; 南桥几晴秋 &#x1f308;C专栏&#xff1a; 南桥谈C &#x1f308;C语言专栏&#xff1a; C语言学习系列 &#x1f308;Linux学习专栏&#xff1a; 南桥谈Linux &#x1f308;数据结构学习专栏&#xff1a; 数据结构杂谈 &#x1f308;数据…

【git lfs 问题记录】

报错如下 WARNING: error running /usr/lib/git-core/git ‘config’ ‘–includes’ ‘–global’ ‘–replace-all’ ‘filter.lfs.smudge’ ‘git-lfs smudge – %f’: ‘error: could not write config file /root/.gitconfig: Device or resource busy’ ‘exit status 4…

基于STM32的智能家居交互终端:使用FreeRTOS与MQTT协议的流程设计

一、项目概述 简要介绍项目的目标和用途 随着智能家居的普及&#xff0c;家庭智能交互终端成为提升居住体验的重要设备。本文将介绍一个基于STM32的家庭智能交互终端的设计与实现&#xff0c;该终端能够通过触摸屏、语音识别和传感器数据采集等功能&#xff0c;提供家庭环境监…

数值计算的程序设计问题举例

### 数值计算的程序设计问题 #### 1. 结构静力分析计算 **涉及领域**&#xff1a;工程力学、建筑工程 **主要问题**&#xff1a;线性代数方程组&#xff08;Linear Algebraic Equations&#xff09; **解释说明**&#xff1a; 在结构静力分析中&#xff0c;我们需要解决复杂的…

linux系统解压zip文件名乱码

这是 zip 格式本身的缺陷导致的。zip 格式并没有指定文件名的编码格式&#xff0c;在压缩和解压时均使用操作系统本地编码&#xff0c;Windows 下简体中文为 GBK/GB2312 编码&#xff0c;Linux 下为 UTF-8 编码&#xff0c;两者不一致就造成了乱码。 解决方案&#xff1a; 如…