为何wait、notify等线程通信相关的方法会被设计在Object中?

为什么wait notify会放在Object里边?wait(),notify(),notifyAll()用来操作线程为什么定义在Object类中? 

1、这些方法存在于同步中; 

2、使用这些方法必须标识同步所属的锁; 

3、锁可以是任意对象,锁在Java中是对象头中的数据结构中的数据,在JVM中每个对象中都拥有这样的数据,所以任意对象调用方法一定定义在Object类中。 

 

wait(),sleep()区别? 

wait():释放资源,释放锁 

sleep():释放资源,不释放锁

posted @ 2020-09-30 11:35  gaopengpy  阅读(420)  评论(0编辑  收藏  举报