在Go语言中,如果我们有一个带有某个方法的类型,该方法启动一些循环机制(不断轮询A并执行B),最好是这样表达:
我是一名新手,对于Go语言中异步运行的代码,不确定惯例是否要求让调用者添加'go'前缀。
目前我的看法是应该记录并给调用者选择。我的想法是在Go语言中,并发实际上并不是公开接口的一部分,而是使用它的属性。这样说对吗?
// Run does stuff, you probably want to run this as a goroutine
func (t Type) Run() {
// Do long-running stuff
}
并记录下这可能需要作为goroutine启动(并让调用者处理)
或者将其隐藏在调用者之外:
// Run does stuff concurrently
func (t Type) Run() {
go DoRunStuff()
}
我是一名新手,对于Go语言中异步运行的代码,不确定惯例是否要求让调用者添加'go'前缀。
目前我的看法是应该记录并给调用者选择。我的想法是在Go语言中,并发实际上并不是公开接口的一部分,而是使用它的属性。这样说对吗?