1.yield()
yield()方法僅僅只是讓出cpu的執行權,並不會將鎖讓出
2.sleep()
sleep()方法也不會將鎖讓出,當我們的線程休眠後,必須等待線程休眠過後,其他線程纔可以拿到鎖
3.wait()
wait()方法被調用後會釋放自己的鎖,當被喚醒的時候會繼續去競爭鎖
4.notify()
notify()方法不會釋放鎖,只有同步代碼塊的業務執行完成後纔會釋放鎖,一般該方法放在代碼最後一行
yield()方法僅僅只是讓出cpu的執行權,並不會將鎖讓出
sleep()方法也不會將鎖讓出,當我們的線程休眠後,必須等待線程休眠過後,其他線程纔可以拿到鎖
wait()方法被調用後會釋放自己的鎖,當被喚醒的時候會繼續去競爭鎖
notify()方法不會釋放鎖,只有同步代碼塊的業務執行完成後纔會釋放鎖,一般該方法放在代碼最後一行