ThreadPool은 sender로 넣고 여러 Worker가 공유 receiver에서 꺼낸다
mpsc receiver는 여러 worker가 함께 보려면 Arc<Mutex<_>>로 감싸야 하며, 각 worker는 job을 하나씩 받아 실행한다.
Box로 감쌈
큐에 넣기
한 번에 하나가 recv
다음 작업 대기
| 구분 | 의미 | 판단 |
|---|---|---|
| Sender | 작업 투입구 | ThreadPool이 보관 |
| Receiver | 작업 출구 | worker들이 공유 |
| Mutex | 동시 recv 보호 | 한 worker씩 접근 |
| Arc | receiver 소유 공유 | worker 스레드로 이동 |
핵심 공유 큐는 job을 복제하는 것이 아니라 receiver 접근을 동기화해 하나씩 나누어 주는 것이다.