这有效.
var tick <-chan time.Time = time.Tick(1e8)
Run Code Online (Sandbox Code Playgroud)
但是,这不是.
var tick chan time.Time = time.Tick(1e8)
Run Code Online (Sandbox Code Playgroud)
为什么我需要<-一个频道的类型声明?我认为那<-是为了写一个频道或从一个频道阅读.为什么会出现在某种类型中?
nos*_*nos 19
通道可以具有指示它是只读,只读还是两者的类型.
指示通道方向是使用< - 作为类型的一部分或者为读/写通道省略.
所以<-in <-chan time.Time是类型的一部分,
chan time.Time //Would be a read/writable channel
chan<- time.Time // Would be a write only channel
<-chan time.Time // Would be a read only channel
Run Code Online (Sandbox Code Playgroud)
并time.Tick(1e8)返回一个只读通道.
更多的语言规范在这里