java线程5种状态_Java线程的5种状态及切换(透彻讲解)-京东面试

2023-11-17

一、Thread的几个重要方法:

我们先了解一下Thread的几个重要方法。

a、start()方法,开始执行该线程;

b、stop()方法,强制结束该线程执行;

c、join方法,等待该线程结束。

d、sleep()方法,线程进入等待。

e、run()方法,直接执行线程的run()方法,但是线程调用start()方法时也会运行run()方法,区别就是一个是由线程调度运行run()方法,一个是直接调用了线程中的run()方法!!

看到这里,可能有些人就会问啦,那wait()和notify()呢?要注意,其实wait()与notify()方法是Object的方法,不是Thread的方法!

同时,wait()与notify()会配合使用,分别表示线程挂起和线程恢复。

这里还有一个很常见的问题,顺带提一下:wait()与sleep()的区别,简单来说wait()会释放对象锁资源而sleep()不会释放对象锁资源。但是 wait 和sleep 都会释放cpu资源

二、Java中的线程的生命周期大体可分为5种状态。

1. 新建(NEW):新创建了一个线程对象,并没有调用start()方法之前。

2. 可运行(RUNNABLE):也就是就绪状态,调用start()方法之后线程就进入就绪状态, 但是并不是说只要调用start()方法线程就马上变为当前线程,在变为当前线程之前都是为就绪状态。值得一提的是,线程在睡眠和挂起中恢复的时候也会进入就绪状态。线程对象创建后࿰

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java线程5种状态_Java线程的5种状态及切换(透彻讲解)-京东面试 的相关文章

  • 排除服务器简单系统故障方法,引导CD排除服务器故障方法有哪些?

    尽管Linux系统以稳定可靠著称 但由于硬件问题有时仍会崩溃 或无法引 针对这一问题 最好的解决办法就是使用Linux系统引导CD 为了方便读者 笔者在下面列出了安装Red Hat Linux 8 0的最必须步骤 为安装过程作笔记 在Red
  • 机器视觉基础

    机器视觉基础 什么是机器视觉 机器视觉常见的应用 机器视觉常用的概念 硬件选型 控制器 相机 镜头 附件选型 什么是机器视觉 机器视觉常见的应用 机器视觉常用的概念 快门时间越短 图片越暗淡 光圈小了 照片会暗淡 硬件选型的时候考虑物距 W
  • Vmware安装vmware-tools后,仍无法上网

    步骤总结 保证vmware tools安装完成 参考下文步骤一 上一步骤如遇到问题 重启vmware的操作系统 步骤总结 1 保证vmware tools安装完成 2 参考下文 步骤一 VMware Workstation虚拟机不能联网的解
  • HTML-div,span,form,input标签

  • 记录docker 部署nessus

    1 开启容器 docker run itd name ramisec nessus p 8834 8834 ramisec nessus 2 登录 注意是https https ip 8843 3 修改admin密码 进入容器 docker
  • 【自学】若依系统-----权限控制

    文章目录 1 数据表 2 sql查询 3 首页菜单权限核心代码 4 菜单管理功能 5 流程 1 数据表 2 sql查询
  • [算法]LeetCode 专题 -- 二分查找专题 34. 在排序数组中查找元素的第一个和最后一个位置

    LeetCode 专题 二分查找专题 34 在排序数组中查找元素的第一个和最后一个位置 难度 中等 题目描述 给定一个按照升序排列的整数数组 nums 和一个目标值 target 找出给定目标值在数组中的开始位置和结束位置 你的算法时间复杂
  • 章节一:Vue.js简介

    1 1 介绍Vue js的基本概念和历史 Vue js是一个流行的JavaScript前端框架 用于构建交互式的Web界面 它采用了组件化的开发模式 使得构建复杂的用户界面变得简单和高效 Vue js由尤雨溪 Evan You 于2014年
  • C++杂谈 inline关键字

    1 inline 用于把函数指定为内联函数 且该关键字需要与函数定义放在一起 与函数声明放在一起没有效果 2 内联函数一般只适用于比较精简的小函数 实际上内联函数是通过牺牲空间去换取时间上的效率 如果函数过于庞大会造成大量空间的浪费 所以需
  • AWS 亚马逊云良好架构框架

    根据多年来AWS的专家们积累的经验 创建了这一份AWS良好架构框架 其中包含了以下五大支柱 安全性 Security 可靠性 Reliability 性能效率 Performance Efficiency 成本优化 Cost Optimis
  • 产品经理,要有怎样的思维方式?

    一 产品经理有哪些不同的思维方式 从直接回答问题 到先搞清楚问题 一看到问题 马上就想答案 是典型的学生思维 在职场中 面对的问题都是目标不明 信息片面 用户提的问题都是经过扭曲 具有欺骗性 不可完全听信用户的话 或者解决方案是没有标准答案
  • 10没有基于策略的qos_Win10 通过Qos提高网速、解除宽带限制的方法

    win10系统电脑上网 电脑的网速变得越来越慢了 下载文件或软件都要等很久 有时还会出现掉线的问题 检查发现网络并没有什么问题 使用其他电子设备连接宽带 网速却很快 这个可能是和windows10系统保留宽带有关系 Qos 也可能和网卡驱动
  • 4.1.3 为什么技术的尽头是艺术

    最后更新2021 08 22 我们面对太多的未知 无人能精确定义所有可能和现实 我们对自己也一无所知 即使牛顿能精确计算天体运行 也无法预言人心 我们要解决的大部分现实问题都是相对于人 作用于人这种不确定生物的问题 而所有这一切都随时间在改
  • linux的TCP服务器设计C++

    服务器设计的类 myepoll h ifndef MYEPOLL H define MYEPOLL H pragma once include
  • Appscan使用教程——安全测试

    1 appscan的启动与基本配置 说明 这里也可以先点击左下角的 完全扫描配置 选项进行扫描配置 后面再具体讲扫描配置 在 起始URL 下面输入需要启动扫描的URL 如果勾选了 仅扫描此目录中或目录下的链接 如下图 则会只扫描起始URL目
  • Opencv学习笔记-----PCA原理及OpenCV实现

    一 介绍 PCA principal component analysis 就是主分量分析 是一种常用的数据分析方法 PCA通过线性变换将原始数据变换为一组各维度线性无关的表示 可用于提取数据的主要特征分量 常用于高维数据的降维 通过数据降
  • 基于复杂环境下的雷达目标检测技术(Matlab代码实现)

    欢迎关注 个人主页 我爱Matlab 点赞 评论 收藏 养成习惯 一键三连 希望大家多多支持 一起加油 语录 将来的我一定会感谢现在奋斗的自己 摘要 随着雷达技术的迅速发展 其应用领域不断拓展 现代雷达面临着更复杂的检测环境以及更多样的目标
  • sentencepiece原理和使用

    sentencepiece为字词的切分算法 在中文就是感觉就是分词 可能有bpe 还没有确定 在英文中感觉就是bpe 算法过程 拆分句子中有两个变量 一个为词表和句子的切分序列 EM算法 句子的切分序列为隐变量 开始时 随机初始化一个词表和
  • Jupyter下的tensorboard使用

    tensorflow自带的tensorboard功能强大 图像生成 参数变化等都可以进行可视化 不过这个要单独启动才行 使用方法可参考 http wiki jikexueyuan com project tensorflow zh how

随机推荐