달력

2

« 2025/2 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

'JAVA이야기'에 해당되는 글 119

  1. 2011.08.28 Barrier
2011. 8. 28. 14:11

Barrier JAVA이야기2011. 8. 28. 14:11

- 래치와 비슷(이벤트가 발생할 때까지 대기)
- But, 모든 스레드가 배리어 위치에 동시에 이르러야 한다.

- 래치는 '이벤트'를 기다리기 위한 동기화 클래스이고, 배리어는 '다른 스레드'를 기다리기 위한 동기화 클래스이다.
- "모두들 오후6시까지 출판사에서 만나자. 일단 약속 장소에 도착하면 모두 도착할 때까지 대기하고, 모두 도착하면 어디로 이동할지는 모두 모인 이후에 생각하자"

- CyclicBarrier 클래스를 사용하면 여러 스레드가 특정한 배리어 포인트에서 반복적으로 서로 만나는 기능을 모델링할 수 있따.
- 커다란 문제 하나여러 개의 작은 부분문제분리반복적으로 병렬 처리하는 알고리즘을 구현하고자 할 때 적용하기 좋다.

- 스레드는 각자 배리어 포인트에 다다르면 await 메소드를 호출하며, await 메소드는 모든 스레가 배리어 포인트에 도달할 때까지 대기한다.

- 배리어가 성공적으로 통과하는 await메소드는 가 스레드별로 배리어 포인트에 도착한 순서를 알려준다.
- 이 정보로 리더를 산출하는데 사용할 수 있다.



 
:
Posted by НooпeУ


Code Start Code End