CountDownLatch

//用等待的線程數量來進行初始化
public void CountDownLatch(int count){...}

計數器count是閉鎖須要等待的線程數量,只能被設置一次,且CountDownLatch沒有提供任何機制去從新設置計數器count線程

與CountDownLatch的第一次交互是主線程等待其餘線程。主線程必須在啓動其餘線程後當即調用CountDownLatch.await()方法。這樣主線程的操做就會在這個方法上阻塞,直到其餘線程完成各自的任務。code

其餘N個線程必須引用CountDownLatch閉鎖對象,由於它們須要通知CountDownLatch對象,它們各自完成了任務;這種通知機制是經過CountDownLatch.countDown()方法來完成的;每調用一次,count的值就減1,所以當N個線程都調用這個方法,count的值就等於0,而後主線程就能夠經過await()方法,恢復執行本身的任務。對象

相關文章
相關標籤/搜索