Java 中 sleep 和 wait 的区别
Java juc 大约 271 字区别一
sleep
是Thread
的方法。
wait
是Object
的方法。
区别二
sleep
不需要包裹在synchronized
中。
wait
必须包裹在synchronized
代码块中。
区别三
sleep
不会释放锁。
wait
会释放锁,并进入Monitor
对象的waitSet
中,当调用notify
后重新竞争锁,因为synchronized
是非公平锁,所以可能直接获得了锁,也可能进入EntryList
双向链表等待获取锁。
相同点
sleep(long n)
和wait(long n)
都能被Thread.interrupted()
方法中断
阅读 943 · 发布于 2021-08-31
————        END        ————
Give me a Star, Thanks:)
https://github.com/fendoudebb扫描下方二维码关注公众号和小程序↓↓↓

昵称:
随便看看
换一批
-
JVM 常用参数阅读 485
-
GitHub 提交了生产环境账号密码撤销办法阅读 760
-
Android Monkey 测试阅读 2757
-
OpenResty 常用 HTTP 请求 API阅读 4535
-
YAML | 竖线 > 大于号 - 减号等特殊符号的作用阅读 680
-
数据结构阅读 1866
-
dubbo-admin Failed to invoke remote method: getMetricsByGroup阅读 5506
-
Golang JSON Tag阅读 2465
-
Elasticsearch can not run elasticsearch as root阅读 5119
-
MySQL 之 where 和 having 的区别阅读 1393