通道写完后,必须关闭通道,否则range遍历会出现死锁,请问这句话对吗?那么如果我有一个场景,一个goroutine往通道写数据,一个或多个goroutine从通道读数据,这种情况是没有关闭通道的,那应该怎么写?补充:我提的问题有点没说清楚,这个往通道写是个死循环的不断写的过程,读也是不断的读,所以你怎么关闭通道?目前我是开一个goroutine不断写,开5个goroutine用range读,尚没有问题,但是看书有这么一句所以问问。这个通道是不断写数据的,所以不存在“通道写完后”,所以也无法关闭,那么另外的goroutine就只管range读取数据就好了可以吗?,问题改成这个,理解对吗,目前程序运行没有报错,只是请教一下这样写是否规范。
2 回答
- 2 回答
- 0 关注
- 452 浏览
添加回答
举报
0/150
提交
取消