sleep() wait() 区别

sleep()  wait() 区别


wait()和sleep()最大的不同在于:wait()会释放对象锁,而sleep()不会!

sleep()不同的是,线程调用此方法后,会休眠一段时间,休眠期间,会暂时释放cpu,但并不释放对象锁。也就是说,在休眠期间,其他线程依然无法进入此代码内部。休眠结束,线程重新获得cpu,执行代码。

wait函数休息一会儿,对象的锁你们拿去用吧,CPU也给你们。

wait函数的线程会一直等待,直到有其他线程调用了同一个对象的notify或者notifyAll方法才能被唤醒,

你可能感兴趣的:(sleep() wait() 区别)