여러 Thread를 시작하고 회수하는 loop 배치
병렬성을 유지하면서 모든 완료를 기다리는 구조를 선택한다.
| 구조 | 실행 모양 | 결과 |
|---|---|---|
| start 후 즉시 join 반복 | 한 작업씩 끝난 뒤 다음 시작 | 직렬화 |
| start 전체 후 join 전체 | worker가 함께 진척 | 동시 실행 |
| join 생략 | main이 초기값을 읽을 수 있음 | 잘못된 결과 |
핵심: worker exception도 필요하면 Thread join을 넘어 결과 channel을 추가한다.
병렬성을 유지하면서 모든 완료를 기다리는 구조를 선택한다.
| 구조 | 실행 모양 | 결과 |
|---|---|---|
| start 후 즉시 join 반복 | 한 작업씩 끝난 뒤 다음 시작 | 직렬화 |
| start 전체 후 join 전체 | worker가 함께 진척 | 동시 실행 |
| join 생략 | main이 초기값을 읽을 수 있음 | 잘못된 결과 |
핵심: worker exception도 필요하면 Thread join을 넘어 결과 channel을 추가한다.