문제 설명

채널은 파이프로, 채널 오퍼레이터 <-를 통해 값을 주고받을 수 있습니다.

map이나 slice처럼 채널도 쓰기 전에 채널임을 선언해줘야 합니다.

ch := make(chan int)
ch <- v    // 채널 ch를 통해 v를 보냄.
v := <-ch  // ch로부터 값을 전달받아, v에 할당.

채널은 디폴트로 상대방이 준비된 후 값을 주고받기 때문에, 별도의 동기화 과정이나 condition variable 설정 없이 goroutine을 쓸 수 있습니다.

실행 결과 실행 중지