2020-09-15:java里的wait()和sleep()的区别有哪些?
福哥答案2020-09-15:#福大大架构师每日一题#
1.线程状态。wait()的线程状态是TimedWaiting和Waiting。sleep()的线程状态是Waiting。
2.指定时间。wait()可以指定时间也可以不指定时间。sleep()必须指定时间。
3.释放锁。wait()释放锁并且加入等待队列,常用于线程间交互。sleep()不会释放锁,常用于暂停执行。
4.同步块。wait()需要在同步块里使用,否则抛出IllegalMonitorStateException异常。sleep()不需要。
5.所在类。wait()是Object里的方法。sleep是Thread里的静态方法。
6.唤醒。wait()需要被唤醒(不指定时间需要被别人唤醒),notify()、notifyAll()、interrupt()。sleep()不需要被唤醒(休眠之后退出阻塞),时间到或者interrupt()。
7.捕获异常。wait()没指定时间不需要捕获异常,指定了时间需要捕获异常。sleep()需要捕获异常。
***
[评论](https://user.qzone.qq.com/3182319461/blog/1600124842)
2020-09-15:java里的wait()和sleep()的区别有哪些?的更多相关文章
- java里面的getAttribute和findAttribute的区别
findAttribute: abstract Object findAttribute(String name) Searches for the named attribute in page, ...
- JAVA里的别名机制
别名现象主要出现在赋值的问题上: 对基本数据类型的赋值是很简单的.基本数据类型存储了实际的数值,而并非指向一个对象的引用,所以在为其赋值的时候,是直接将一个地方的内容复制到了另一个地方.例如,对基本数 ...
- JAVA里面的int类型 和Integer类型,有什么不一样
JAVA里面的int类型 和Integer类型,有什么不一样 原创 2013年09月04日 23:15:11 标签: java / 2120 编辑 删除 JAVA里面的int类型 和Integer类型 ...
- (转载)Java里快如闪电的线程间通讯
转自(http://www.infoq.com/cn/articles/High-Performance-Java-Inter-Thread-Communications) 这个故事源自一个很简单的想 ...
- java里的日期时间
为了更好理解java的日期时间类,在这里我们先介绍一下关于历法.标准时间的一些概念. 历法有很多种,我们大中华上下五千年,自然也有自己的历法,生活中我们通常把自己传统的历法叫做农历,也有人叫它阴历或夏 ...
- Java 里如何实现线程间通信
正常情况下,每个子线程完成各自的任务就可以结束了.不过有的时候,我们希望多个线程协同工作来完成某个任务,这时就涉及到了线程间通信了. 本文涉及到的知识点:thread.join(), object.w ...
- JAVA里的布尔运算符-甲骨文面试题
重要一点: (& ,|) ==>二进制布尔运算符,(&&,||)==>条件布尔运算符 二进制布尔运算符,两边都会执行,不管左边是否为真或假==>对于运算符两边 ...
- Java 里快如闪电的线程间通讯
这个故事源自一个很简单的想法:创建一个对开发人员友好的.简单轻量的线程间通讯框架,完全不用锁.同步器.信号量.等待和通知,在Java里开发一个轻量.无锁的线程内通讯框架:并且也没有队列.消息.事件或任 ...
- Java里方法的参数传递方式
Java里方法的参数传递方式只有一种:值传递. Java中参数传递的都是参数值 下面从两个维度来看 1.传递的参数是8种基本数据类型 这个比较好理解,8种基本数据类型,作为参数时,可以理解为原来的一个 ...
- JDK 15 JAVA 15的新特性展望
目录 JEP 371: Hidden Classes JEP 372: 删除 Nashorn JavaScript Engine JEP 377: 新的垃圾回收器ZGC正式上线了 JEP 378: T ...
随机推荐
- markdown基本学习
MarkDown学习 标题(二级标题 ##) 标题 字体 加粗(**文字**) 斜体 (*文字*) 加粗+斜体 (***文字***) 废弃 (~~文字~~) 引用(>文字) 摘抄 分割线(--- ...
- spring-mvc.xml
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.spr ...
- goujian
第二章的内容先对第一张来说更偏向于技术性,在团队合作中,如何保证自己所负责模块的质量的稳定,这就对自身的技术和一些良好的代码书写习惯有一定的要求.这里除了之前接触的代码的整齐(段落划分),变量值和文件 ...
- 使用arcgis按掩膜批量处理MODIS.tif数据提取研究区.shp边界的python代码
在输入代码之前,需要先用arcgis把需要处理的数据导入,再把研究区shp导入,然后定义投影,先掩膜处理一个数据,再进行下一步输入代码批量处理数据的步骤.如果 不先定义投影,可能会出现输入代码不执行的 ...
- CSS 平滑滚动 scroll-behavior: smooth
凡是需要滚动的地方都加一句scroll-behavior:smooth 来提升滚动体验! 经常使用的锚点定位功能就有了平滑定位功能,如<a href="#">返回顶部& ...
- Trino Master OOM 排查记录
背景 最近线上的 trino 集群 master 节点老是因为 OOM crash,我们注意到 trino crash 前集群正在运行的查询数量正常,不太像是因为并发查询数据太多导致的 OOM.遂配置 ...
- CTF show 信息收集篇
web1 f12查看网页源代码 web2 打开发现无法f12查看源代码 方法1:禁用js 方法2:打开空白网页提前f12查看源代码然后复制url打开 方法3:Ctrl+u查看 web3 burp抓包 ...
- Github Copilot 比在座各位更会写代码。jpg
之前大佬和我安利过 Copilot, 作为一个能用就行的践行者, 我一贯对这些东西都不太感兴趣. 就如我多年VS Code写各种编程语言, jetbrains 全家桶我都懒得搞~ 不过最近看到过Cha ...
- SpringBoot——模板引擎及原理
更多内容,前往IT-BLOG 一.模板引擎的思想 模板是为了将显示与数据分离,模板技术多种多样,但其本质都是将模板文件和数据通过模板引擎生成最终的 HTML代码. 二.SpringBoot模板引擎 S ...
- Kafka 消费者读取数据
消费者不需要自行管理 offset(分组+topic+分区),系统通过 broker 将 offset 存放在本地.低版本通过 zk 自行管理.系统自行管理分区和副本情况.消费者断线后会自动根据上一次 ...