当前位置: 首页 > news >正文

Java中线程的状态



  • 创建一个线程对象之后,线程就是 new 新建状态
  • 使用 start() 方法之后线程进入 runnable 可运行状态(ready | run)
  • 执行完 run() 方法之后线程进入 terminnated 终止状态

runnable 状态可能出现的其他状态

  • 多个线程竞争同一个锁,没有获得锁的线程进入到 blocked 阻塞状态
  • 调用了有参数的 join() wait() sleep() 方法之后,线程进入计时等待状态,并且在等待时间到达之后,会自动唤醒线程。
  • 调用了无参的 wait()、join()方法之后,线程进入等待状态,并且不会自动唤醒,需要其他线程使用 notify() 或者 notifyAll() 来唤醒。


注意的点
●调用 sleep() 方法的线程不会释放锁 但是调用了 wait() 方法的线程是会释放锁
●join()与 wait()、sleep()有所不同,比如 t1.wait()、t1.sleep() 是对 t1 线程进行休眠操作,而 t1.join() 是哪个线程执行了 t1.join() 这行代码那么这个线程进入休眠操作


http://www.mrgr.cn/news/30154.html

相关文章:

  • springboot苍穹外卖实战:五、公共字段自动填充(aop切面实现)+新增菜品功能+oss
  • python爬虫指南——初学者避坑篇
  • P8680 [蓝桥杯 2019 省 B] 特别数的和
  • websocket服务器(协程风格)--swoole进阶篇
  • 显示器接口种类 | 附图片
  • HTB:Photobomb[WriteUP]
  • 【深度学习】(2)--PyTorch框架认识
  • 电池曲线测试(TODO)
  • 两个字符串的最长公共子序列(Longest Common Subsequence, LCS)、荷兰国旗问题、合并两个有序数组、约瑟夫环
  • 【TabBar嵌套Navigation案例-关于页面 Objective-C语言】
  • 便捷数据检索与下载,拟合曲线预测趋势 轻松管理多个项目,实现在线监测
  • 生成式AI:ChatGPT及其在各行业的应用前景
  • aperiodic CSI-RS for tracking for fast SCell activation
  • ERP顾问退休?不存在的!
  • Flink 与 Kubernetes (K8s)、YARN 和 Mesos集成对比
  • 动态规划的解题步骤,给自己看的
  • 【Python】探索 PluginBase:Python 插件系统的灵活构建
  • Java函数式BiFunction接口介绍、应用场景和示例代码
  • 前端vue左侧树的一整套功能实现(一):vue2+vite封装v-resize指令,实现左侧树拖拽宽度和折叠展开
  • Ubunutu 的 Bash 没有颜色
  • 【算法】BFS 系列之边权为 1 的最短路问题
  • 4、存储器管理
  • 分布式光伏监控系统光储充一体化助力源网荷储
  • docker在基础镜像上,比如rockylinux,如何配置yum仓库
  • python格式化输出
  • k8s1.27.7部署higress,代理非k8s集群业务