- Go의 동시성 모델은 간단하고 오류가 적도록 설계됨. 💡
- Go 루틴은 OS 스레드보다 훨씬 가벼우며 작은 스택으로 시작함. 🚀
- Go 런타임은 선점형 스케줄러를 사용하여 Go 루틴을 관리함. ⏱️
- 채널은 Go 루틴 간의 통신을 위한 내장 메커니즘임. 💬
- 채널은 데이터의 명확한 흐름을 강제하여 프로그램 이해를 돕는다. ➡️
- select 구문은 여러 작업을 대기하고 준비되는 작업에 응답할 수 있게 함. 🚦
- 버퍼링된 채널은 즉시 차단하지 않고 데이터를 보낼 수 있게 함. 📦
- Go는 경합 감지기와 같은 도구를 제공하지만, 모든 동시성 문제를 해결해주지는 않음. ⚠️