题目解析 GOLANG ROADMAP社区
答案(栾龙生)
空通道即无缓冲通道。无缓冲通道上的发送操作将会阻塞,直到另一个goroutine在对应的通道上执行接管操作,这时值传送实现,两个goroutine都能够继续执行。相同,如果接管操作先执行,接管方gorountine将阻塞,直到另一个goroutine在同一个通道上发送一个值。
应用无缓冲通道进行的通信导致发送和接管goroutine同步化。因而,无缓冲通道也称为同步通道。当一个值在无缓冲通道上传递时,接管值后发送方goroutine才被再次唤醒。
本文由:GOLANG ROADMAP社区 公布