고루틴 Go에서는 동시에 수행되는 작업을 고루틴이라고 한다. 프로그램이 시작된 뒤 유일한 고루틴은 main 함수를 호출하는 것이므로 이를 메인 고루틴이라고 한다. 새 고루틴은 go문에 의해 생성된다. 문법적으로 go문은 키워드 go가 앞에 붙는 일반 함수 또는 메소드 호출이다. func handleConn(c net.Conn) { input := bufio.NewScanner(c) for input.Scan() { go echo(c, input.Text(), 1*time.Second) } c.close() } 채널 고루틴이 Go 프로그램의 동작이라면 채널은 고루틴 간의 연결이다. 채널은 한 고루틴이 다른 고루틴으로 값을 보내기 위한 통신 메커니즘이다. 각 채널은 채널의 요소 타입이라는 특정 타입 값의 통..