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

线程状态

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 从卖包子的案例学习进程间的通信
public class Test {public static void main(String[] args) {Object obj=new Object();Thread th1=new Thread(){@Overridepublic void run() {synchronized (obj){System.out.println("来三个包子!");try {obj.wait();  //阻塞线程} catch (InterruptedException e) {throw new RuntimeException(e);}System.out.println("好嘞,吃包子!");}}};Thread th2=new Thread(){@Overridepublic void run() {synchronized (obj){System.out.println("好嘞,稍等五秒钟!");try {Thread.sleep(5000);   //进入计时等待} catch (InterruptedException e) {throw new RuntimeException(e);}System.out.println("包子做好啦!");obj.notify(); //唤醒线程}}};th1.start();th2.start();}
}
  • 进入计时等待TimeWaitting的方式
  1. sleep(long m) ,在毫秒值结束后线程进入Runnable或者Blocked状态
  2. Wait(long m) ,在毫秒值结束之后如果还没有被唤醒,则自动唤醒进入Runnable或者Blocked状态
  • 唤醒线程
  1. notify() 随机唤醒单个线程
  2. notifyAll() 唤醒所有线程
http://www.lryc.cn/news/104929.html

相关文章:

  • HTML一些基础知识
  • git 命令总结
  • 【Django】如何优化数据库访问
  • 常压室温超导材料:揭开物理学的新篇章
  • 【《C# 10 和 .NET 6入门与跨平台开发(第6版)》——一本循序渐进的C#指南】
  • 2.5 BUMP图改进
  • 第六篇-ChatGLM2-6B-CentOS7安装部署-GPU版
  • dotnet 依赖注入-批量注入Controller,service,Dao
  • 【Spring】Spring对IoC的实现
  • 正则表达式中的大括号-花括号{}有什么用?
  • Flutter 状态栏完美攻略
  • Packet Tracer - 连接有线和无线 LAN
  • 02 笔记本电脑m.2硬盘更换
  • 2.04 商品搜索功能实现
  • 【SEO基础】百度权重是什么意思及网站关键词应该怎么选?
  • Unity实现在3D模型标记
  • iOS开发-NotificationServiceExtension实现实时音视频呼叫通知响铃与震动
  • 性能调试【学习笔记】
  • 【taro react】---- 获取元素的位置和宽高等信息
  • Java【Spring】项目创建、存储和获取 Bean 的基本方式
  • docker minio安装
  • 设计模式-命令模式在Java中的使用示例-桌面程序自定义功能键
  • 分冶算法 剑指 07 重建二叉树 排序算法:剑指45 把数组排成最小的数 10-I 斐波那契数列
  • Postgresql取消正在执行的任务或强制终止正在执行的任务
  • 【Linux】Centos7 的 Systemctl 与 创建系统服务 (shell脚本)
  • Redis集群Cluster搭建
  • swing组件应用
  • Spring学习记录----十五、面向切面编程AOP+十六、Spring对事务的支持
  • Color Correction (颜色校正)
  • Unity-缓存池