1. 首页
  2. 主题
  3. Go问与答

go中的channel的一点疑惑

yz23je · · 2305 次点击
正在用go写后台,遇到一个场景是这样的: 每个用户在上传新文件时,go都要去删除旧文件,所以我想当用户上传新文件成功之后,就把旧文件的地址放到channel中,然后channel那边创建有三个协程来取出数据并进行删除操作。这个流程没有什么问题。我疑惑的是,我应该创建多大的channel呢,太小了我怕到时候忙不过来出现阻塞,太大了又感觉浪费。还是可以不指定channel的大小,由系统来决定,channel满了系统就自己增加,少了就自己减少,不知道会这样吗? 目前代码如下: ``` var delete_channel = make(chan string,100) ```
上面的功能解决了,不过这个思路想到可以用到其它功能上。谢了
#8
更多评论
这个场景为啥不用defer?
#1
个人观点:这种场景,没有必要创建协程来删除旧文件,直接删除就行。
#2

用户登录

没有账号?注册

今日阅读排行

    加载中

一周阅读排行

    加载中