Before I talk about unbuffered channels, let me recap what channels are and how they help make concurrency easier in Go.
Channels synchronize go routines as they send and recieve resources they need between each other. When declaring channel we
use the make
keyword along with the type of data that we are going to share.
Unbuffered and Buffered channels behave differently and understanding both will help you decide which one is more suitable in a given scenario.
Unbuffered channel is channel with no capacity to hold any value before it's recieved.