Go는 채널과 동시성, select 및 go 문에 대한 최고 수준의 지원을 제공한다. 동시성 기능을 사용하며 빠질 수 있는 함정들을 정리해보자. Keep yourself busy or do the work yourself Leave concurrency to the caller 함수가 고루틴을 시작하는 경우 호출자에게 해당 고루틴을 명시적으로 중지하는 방법을 제공해야 한다. 해당 함수의 호출자에게 함수를 비동기적으로 실행하도록 결정하는 것이 종종 더 쉽다. Never start a goroutine without knowning when it will stop 고루틴의 생성자에게 발생하는 오류를 다시 전달하여 중지된 이유를 알 수 있도록 하고 프로세스를 깨끗하게 종료하도록 해야한다. 출처 : Practi..