[Go] Go Routine과 Channel 사용
0. goroutine의 개념 고루틴(이하 goroutine)은 Go 런타임이 관리하는 논리적 쓰레드입니다. 고루틴은 OS의 쓰레드 보다 훨씬 가볍게 비동기 처리를 구현하기 위해 만든 것으로 OS 쓰레드 보다 많은 면에서 우월성을 드러내고 있습니다. 예시로, 고루틴은 OS쓰레드와 1대1로 대응되지 않고, 훨씬 작은 공간을 차지 합니다 그리고 고루틴은 메모리 측면에서도 효율적입니다. 일반적으로 OS쓰레드가 1메가바이트의 스택을 차지하는 반면, 고루틴은 몇 키로바이트의 작은 스택을 갖습니다. 이제, 간단한 프로그램을 고루틴을 사용하여 더 빠르게 만들어 보도록 하겠습니다. 1. non-goroutine 프로그램 작성 간단한 윈도우 커맨드 프로그램의 명령어 중 하나인, ping을 따라하는 프로그램을 만들어 보겠..
Go
2020. 2. 9. 20:11