去通道以空结构作为输入。这个输入可以做什么?

问题描述:

a:= make(chan struct {})去通道以空结构作为输入。这个输入可以做什么?

这样的话,去通道取空结构作为输入。这个输入可以做什么?

谢谢。

号:它可以是一个空结构(struct{}{}),而不是 “东西”

要 “东西”,你需要interface{}

正如我在“Go Golang : anonymous struct and empty struct”中所解释的,一个空的结构对传递一个大小为0的对象很有用!这是一个很好的方式来表明事情已经发生完成。

struct{}很像其他语言的单位类型;它只有一个没有信息的价值。你从这样一个频道得到的值将不包含任何信息,但是这样一个频道可以用于发生某些事件时的信号。从这个频道接收的一个门厅会在发送了一些东西时唤醒。