阻塞狀態與等待狀態的區別:
實際上兩者不用刻意區分兩者,因爲兩者都會暫停線程的執行。
兩者的區別是:進入等待狀態是線程主動的,而進入阻塞狀態是被動的。更進一步的說,進入阻塞狀態是在同步, 而進入等待狀態是在同步代碼之內。
兩者的共同點是:
區別是調用了sleep方法的線程直接受CPU調度,而wait則是等待另外的java線程在持有同一個對象鎖的同步塊,方法中進行notify調用。
阻塞狀態與等待狀態的區別:
實際上兩者不用刻意區分兩者,因爲兩者都會暫停線程的執行。
兩者的區別是:進入等待狀態是線程主動的,而進入阻塞狀態是被動的。更進一步的說,進入阻塞狀態是在同步, 而進入等待狀態是在同步代碼之內。
兩者的共同點是:
區別是調用了sleep方法的線程直接受CPU調度,而wait則是等待另外的java線程在持有同一個對象鎖的同步塊,方法中進行notify調用。