Java线程中的常用方法

news2024/11/19 21:36:58

获取当前线程的方法

在这里插入图片描述

为线程设置名称

在这里插入图片描述

为线程设置优先级,优先级有10个级别,从1-10,能影响cpu调用线程的级别,但是不能决定。

/**
 * @author 舒一笑
 * @date 2023/5/25
 */
public class Test03 {
    public static void main(String[] args) {
        Thread thread01 = new Thread(() -> {
            for (int i = 0; i < 100; i++) {
                System.out.println("tttttt" + i);
            }
        });
        Thread thread02 = new Thread(() -> {
            for (int i = 0; i < 100; i++) {
                System.out.println("ffffff" + i);
            }
        });
        thread01.setPriority(10);
        thread02.setPriority(2);
        thread02.start();
        thread01.start();
    }
}

在这里插入图片描述

线程的让步

使用该方法之后线程当前状态为就绪状态
在这里插入图片描述

线程的休眠

在这里插入图片描述

线程的抢占

使用Thred中的非静态join方法,下图中由于线程是在主线程中join,所以要等到主线程执行完毕才能执行自己的线程
在这里插入图片描述
在这里插入图片描述

守护线程

默认情况下线程都是非守护线程(也可以叫做用户线程),守护线程也可以叫做后台线程,用于执行后台任务等等,守护线程中最典型的就是GC垃圾回收器
JVM会在程序中不存在非守护线程中结束JVM
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

线程的等待和唤醒

  1. synchronized锁资源的线程
  2. 通过wait去锁等待池,会释放锁资源,线程是waiting状态
  3. 通过notify,或者notifyAll将等待池中的线程唤醒,一个/全部。添加到锁池中,线程是blockd状态
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

线程的结束方式

run方法结束、return结束、stop结束

  1. stop方式
    在这里插入图片描述

  2. 使用共享变量,这种方式使用的也不多,修改共享变量的方式退出死循环,结束run方法
    在这里插入图片描述

  3. interrupt方式

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

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

相关文章

「OceanBase 4.1 体验」|docker-compose快速部署OceanBase数据库——筑梦之路

OceanBase数据库简介 官方网站&#xff1a;https://www.oceanbase.com/softwarecenter 大名鼎鼎的OceanBase数据库&#xff0c;在多个双十一购物节上历经验证&#xff0c;今天就来体验一下当前最新版本 4.1。 OceanBase 4.1 版本技术文档&#xff1a;https://www.oceanbase.c…

How-to-generate-kernel

文章目录 前言一、协方差判断卷积核相关性问题一: 不同的样本空间&#xff1f;问题二&#xff1a;计算方式&#xff1f;想法 二、整体流程三、BSConv-核内相似性 前言 在常规卷积的过程中找到相关性低的一部分卷积核&#xff0c;利用这部分卷积核结合深度可分离卷积搭建起新的…

mycat的安装及使用

2、mycat的安装及使用 1、mycat的安装 1、环境准备 ​ 本次课程使用的虚拟机环境是centos6.5 ​ 首先准备四台虚拟机&#xff0c;安装好mysql&#xff0c;方便后续做读写分离和主从复制。 192.168.85.111 node01 192.168.85.112 node02 192.168.85.113 node03 192.168.85.…

第3章“程序的机器级表示”:数据传送指令

文章目录 3.4 访问信息3.4.1 操作数指示符3.4.2 数据传送指令3.4.3 数据传送示例 3.4 访问信息 一个 IA32 中央处理单元&#xff08;CPU&#xff09;包含一组八个存储 32 位值的寄存器&#xff0c;这些寄存器用来存储整数数据和指针。 下图显示了这八个寄存器。它们的名字都是…

element-ui拖拽上传及问题解决(drag的使用注意事项)

element-ui拖拽上传及问题解决(drag的使用注意事项) 上传组件(:drag“true”) <template><el-uploadclass"avatar-uploader"action"":show-file-list"false":on-success"handleAvatarSuccess":before-upload"beforeAva…

如何获得铁粉(弯道超车的攻略)

文章目录 一、提供有价值的内容二、保持更新频率三、与读者互动四、优化SEO五、提供专栏订阅服务 CSDN(China Software Developer Network)是中国最大的IT社区和在线学习平台之一&#xff0c;成立于1999年。它是一个面向软件开发者的知识共享社区&#xff0c;提供有关编程语言、…

Docker容器技术|最强王者篇

&#x1f648;作者简介&#xff1a;练习时长两年半的Java up主 &#x1f649;个人主页&#xff1a;程序员老茶 &#x1f64a; ps:点赞&#x1f44d;是免费的&#xff0c;却可以让写博客的作者开兴好久好久&#x1f60e; &#x1f4da;系列专栏&#xff1a;Java全栈&#xff0c;…

行业领先生物制药企业在冷链物流运输中采用虹科LIBERO温度记录解决方案

中国首个获得世界卫生组织国际通用名的生物Ⅰ类新药是用于抗血管内皮生长因子的融合蛋白&#xff0c;该药物通过结合血管内皮生长因子VEGF&#xff0c;竞争性抑制VEGF与受体结合并阻止VEGF家族受体的激活&#xff0c;从而抑制内皮细胞增殖和血管新生&#xff0c;达到治疗湿性年…

自学网络安全遇到问题怎么解决?路线是什么

自学网络安全很容易学着学着就迷茫了&#xff0c;找到源头问题&#xff0c;解决它就可以了&#xff0c;所以首先咱们聊聊&#xff0c;学习网络安全方向通常会有哪些问题&#xff0c;看到后面有惊喜哦 1、打基础时间太长 学基础花费很长时间&#xff0c;光语言都有几门&#xf…

什么样的程序员在 35 岁以后依然被公司抢着要?

什么样的程序员在35岁就会被优化&#xff1f; 程序员的35岁危机是一个老生常谈的话题&#xff0c;与其问什么样的程序员在35岁会被公司抢着要&#xff0c;不如踏实一点&#xff0c;来讨论下什么样的程序员在35岁之后不会被淘汰。 T0级别&#xff1a;有技术壁垒 这类人大概占程…

高通滤波和低通滤波理性到感性分析

高通滤波和低通滤波理性到感性分析 文章目录 高通滤波和低通滤波理性到感性分析高通低通滤波辨析Python仿真代码参考资料 高通低通滤波辨析 物理意义&#xff1a; 从频率角度&#xff0c;高通滤掉低频信息&#xff0c;低通滤掉高频信息从采样点看&#xff0c;低通使样点前后变…

【2023 · CANN训练营第一季】应用开发(初级)——第一章 AscendCL概述

ACL基本概念 ACL基本概念 Host&#xff1a; Host指与Device相连接的X86服务器、ARM服务器&#xff0c;会利用Device提供的NN (Neural-Network )计算能力&#xff0c;完成业务。Device: Device指安装了芯片的硬件设备&#xff0c;利用PCle接口与Host侧连接&#xff0c;为Host提…

[黑盾CTF 2023] secret_message 复现

赛后拿到题目和pwn_ckyan的WP&#xff0c;复现一下&#xff0c;这个题坑还是不小的。120分钟的比赛&#xff0c;只作这一个题还差不多。 先看题。 __int64 __fastcall main(__int64 a1, char **a2, char **a3) {char buf[48]; // [rsp0h] [rbp-30h] BYREFinit_0();if ( check…

Fiddler抓包工具之fiddler界面工具栏介绍

fiddler界面工具栏介绍 ​ &#xff08;1&#xff09;WinConfig&#xff1a;windows 使用了一种叫做“AppContainer”的隔离技术&#xff0c;使得一些流量无法正常捕获&#xff0c;在 fiddler中点击 WinConfig 按钮可以解除这个诅咒&#xff0c;这个与菜单栏 Tools→Win8 Loopb…

Python 的 type() 和 isinstance() 函数

type()、isinstance()都是对象类型操作函数&#xff0c;用于判定对象类型&#xff0c;用哪个函数更好哩&#xff1f; 【学习的细节是欢悦的历程】 Python 官网&#xff1a;https://www.python.org/ Free&#xff1a;大咖免费“圣经”教程《 python 完全自学教程》&#xff0c;…

Git—常用指令

示意图 指令 描述 git -v 查看版本号 git init 创建仓库&#xff0c;初始化 git clone 仓库地址 下载远程仓库 git config user.name 名称 配置名称 git config user.email 邮箱 配置邮箱 git config --global user.name 名称 全局配置名称 git config --global …

水下图像1

d_r_26_.jpg 一个男子拿着一个标定板在站在水中 一个穿着黑色短裤的男子拿着标定板站在水中 一个戴着潜水镜的男子拿着标定板站在水中 一名男子正在水下潜水 有一个潜水员双手拿着一个标定板在站在水中 A man is standing in the water with a calibration board A man we…

信号在MATLAB中的运算——信号的积分和微分

信号在MATLAB中的运算——信号的积分和微分 对于连续时间信号&#xff0c;其微分运算是用 diff 函数来完成的&#xff0c; 其调用格式为&#xff1a;diff(function, variable, n)&#xff0c; 其中 function&#xff1a;为需要进行求导运算的信号&#xff08;或被赋值的符号…

关于esp8266模块与stm32f103模块的连接,问题分析

文章目录 模块和芯片实验目的连接方式main.hesp8266.cesp8266.htcp.ctcp.h实验中出现的问题源代码 模块和芯片 stm32f103c8t6 单片机 esp8266 wift 模块 实验目的 实现esp8266 模块的通讯&#xff08;客户端&#xff09; 连接方式 这个是我所使用的模块ESP-01S 类型的&…

C++中stack的用法(超详细,入门必看)

博主简介&#xff1a;Hello大家好呀&#xff0c;我是陈童学&#xff0c;一个与你一样正在慢慢前行的人。 博主主页&#xff1a;陈童学哦 所属专栏&#xff1a;CSTL 前言&#xff1a;Hello各位小伙伴们好&#xff01;欢迎来到本专栏CSTL的学习&#xff0c;本专栏旨在帮助大家了解…