缓冲通道的用途是什么?如果我想要多个并行操作,我可以使用默认的同步通道eq。何时使用缓冲通道?
package main
import "fmt"
import "time"
func longLastingProcess(c chan string) {
time.Sleep(2000 * time.Millisecond)
c <- "tadaa"
}
func main() {
c := make(chan string)
go longLastingProcess(c)
go longLastingProcess(c)
go longLastingProcess(c)
fmt.Println(<- c)
}
增加缓冲区大小的实际情况是什么?
嘿,问题是关于缓冲通道的真实生活使用场景。上面的例子实际上只是一个例子。 – Dante 2013-02-27 13:45:34
使用缓冲通道很大程度上取决于执行的任务。查看更新的答案。 – zzzz 2013-02-27 14:10:56