본문 바로가기
백엔드기술/개발언어

CountDownLatch을 이용하여 Thread 사용시 모든 쓰레드 종료 기다리기

by RevFactory 2013. 9. 24.

CountDownLatch 을 사용하면 멀티 쓰레드 사용시 모든 쓰레드 종료 시점을 알 수 있다.


간단한 예제 코드


private static AtomicInteger _nextInc = new AtomicInteger(

(new java.util.Random()).nextInt());



final List<Integer> list = Collections.synchronizedList(new ArrayList<Integer>());

final CountDownLatch latch = new CountDownLatch(10000);


for(int i = 0 ; i < 10000 ; i++) {

Thread thread = new Thread() {

public void run() {

list.add(_nextInc.getAndIncrement() & 0xFF);

latch.countDown();

}

};

thread.start();

}

try {

latch.await();

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

Collections.sort(list);

for(int n : list) {

System.out.println(n);

}


 


'백엔드기술 > 개발언어' 카테고리의 다른 글

파이썬 cx_Oracle 설치하기  (0) 2014.02.26
자바 리소스 모니터링 툴 (VisualVM)  (0) 2013.03.09
WEB Socket  (0) 2013.01.05