正在用go写后台,遇到一个场景是这样的:
每个用户在上传新文件时,go都要去删除旧文件,所以我想当用户上传新文件成功之后,就把旧文件的地址放到channel中,然后channel那边创建有三个协程来取出数据并进行删除操作。这个流程没有什么问题。我疑惑的是,我应该创建多大的channel呢,太小了我怕到时候忙不过来出现阻塞,太大了又感觉浪费。还是可以不指定channel的大小,由系统来决定,channel满了系统就自己增加,少了就自己减少,不知道会这样吗?
目前代码如下:
```
var delete_channel = make(chan string,100)
```
其实这个思路我们最开始也考虑过,但是后面觉得不符合我们的情况我们就没有采用了,因为如果用这个方案,后期的维护以及以后功能的升级方面会变得麻烦。
#7
更多评论