java 线程唤醒于阻塞的常用方法

news/2025/1/3 3:11:38/

1.分类描述

  • 1.sleep() 休眠
  • 2.suspend() 暂停和 resume() 继续
  • 3.yield() 让步

就是我放弃本次执行,但继续排队,下一次有机会在执行。

  • 4.wait() 和 notify() notifyAll()

注:这两个方法,属于Object类,而不属于Thread类,wait()会先释放锁住的对象,然后再执行等待的动作。由于wait()所等待的对象必须先锁住,因此,它只能用在同步化程序段或者同步化方法内,否则,会抛出异常IllegalMonitorStateException.

两个方法搭配使用,wait()使线程进入阻塞状态,调用notify()时,线程进入可执行状态。wait()内可加或不加参数,加参数时是以毫秒为单位,当到了指定时间或调用notify()方法时,进入可执行状态。

  • 5.join()

也叫线程加入。是当前线程A调用另一个线程B的join()方法,当前线程转A入阻塞状态,直到线程B运行结束,线程A才由阻塞状态转为可执行状态。

这种方法的使用场景:比如我目前的处理无法继续了,需要另一个状态或者数据的支持,那么可以将支持的监听放到另一个线程中,满足条件,主线程继续,子线程结束。

2.规律总结:

线程就好比排队,你有排队和放弃排队的权力,但你没有立即执行的权力。

suspend和resume是最本质的线程控制方法,其他的方法都是依据这两个方法定制起来的。

  • 1.sleep(5000) 我现在suspend,5000后执行resume;
  • 2.yield()让步,我正办理登机呢,刚拍完照,发现忘记带一个东西了,这时候我让步,但是我取完东西后,会进行下一次排队。
  • 3.join 这里就叫”接合“吧,我把我的线程suspend,开启另一个线程,他执行完的时候,我在resume;


http://www.ppmy.cn/news/47372.html

相关文章

启动 Ethereum(上海) 主网全节点

问题描述 采用最新的geth版本之后,按照之前的方法启动geth主网节点会出现如下问题: Post-merge network, but no beacon client seen. Please launch one to follow the chain!问题原因 The above message is emitted when Geth is run without a conse…

在Windows10中安装WSL2(Ubuntu 22.04.2 LTS)

WSL1 和 WSL2 WSL 1 于 2016 首次发布,在 windows 系统中可以使用linux系统。 但是WSL1的缺点有: 文件 I/O 慢,尤其是在大量IO操作时,例如使用 git 克隆仓库;不支持内核程序; WSL 2 针对以上两个缺点进…

Tc2xx知识点(二) :AURIX单片机基础概念记录

目录 1、概述 2、通用寄存器文件 3、Overlay 4、cache 5、英飞凌Tc275的Eray 6、内存分析(手册)

MyBatis核心配置文件详解

<?xml version"1.0" encoding"UTF-8" ?> <!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration><environments default"…

3.0、Java继承与多态 - 构造方法的访问特点

3.0、Java继承与多态 - 构造方法的访问特点 在继承关系中&#xff0c;父类构造方法的访问特点&#xff1a; 1、子类构造方法当中有一个默认隐含的 super(); 调用&#xff0c;所以一定是先调用父类构造&#xff0c;然后再去执行子类构造&#xff1b; 2、子类构造可以通过 supe…

中文翻译英语转换器-怎么把wps表格里的英文翻译成中文

对于那些需要频繁地进行中英互译的用户来说&#xff0c;字数限制是一个常见的问题。很多翻译软件经常会限制每次翻译的字数&#xff0c;导致用户翻译工作的效率和质量无法得到保证。如果您正在遭受这些限制&#xff0c;中英互译字数无限的软件将让您的翻译工作变得更加便捷和高…

网络原理之UDP

hi,大家好,又见面了,今天为大家介绍一下UDP的网络原理&#x1f437;&#x1f437;&#x1f437; 文章目录 认识UDP报文格式UDP特点TCP,UDP应用场景基于UDP的应用层协议 认识UDP报文格式 UDP特点 TCP,UDP应用场景 基于UDP的应用层协议 1.认识UDP报文格式 其实在真正传输…

《花雕学AI》哪种技能5年10年后还会被市场需要? 该如何提高这些能力?

随着AI人工智能、ChatGPT等新的技术革新的发展&#xff0c;未来职业场景确实会发生变化&#xff0c;一些传统的职业可能会被取代&#xff0c;而一些新的职业可能会出现。根据世界经济论坛所发布的《未来就业报告》&#xff0c;一半的劳动力需要在2025年之前完成技能重塑。那么&…