Ⅰ java sleep 和wait的區別
java中sleep和wait的區別主要有兩點,第一sleep必須指定時間,而wait可以指定也可以不指定;第二在同步中,sleep釋放cpu執行權,但是不釋放鎖,而wait釋放cpu執行權和鎖。
java中sleep和wait都是讓線程休眠的方法,它們都是阻塞方法。在同步中,需要注意根據具體的需求來選擇使用sleep和wait。
Ⅱ java 中用了thread.sleep()這個函數以後,當線程再被喚醒時,是重新執行thread.run()嗎
都不是,而是繼續執行當前線程sleep後的操作
Ⅲ java sleep() 和 wait() 有什麼區別
1、同步鎖的對待不同:
sleep()後,程序並不會不釋放同步鎖。
wait()後,程序會釋放同步鎖。
2、用法的不同:
sleep()可以用時間指定來使他自動醒過來。如果時間不到你只能調用interreput()來強行打斷。
wait()可以用notify()直接喚起。
3、屬於不同的類:
sleep()的類是Thread。
wait()的類是Object。