主题
文章
项目
资源
图书
Go网址导航
下载
官方文档
英文文档
中文文档
标准库中文版
Go指南
注册
登录
首页
会员
kiwi-yan的信息
TA的收藏
初级会员
第 12740 位会员
ID:
kiwi-yan
注册时间:
2017-09-27 03:05:20
是否在线:
Offline
财富:
26
83
更多>>
最近发布的主题
Go问与答
关于time.Ticker的一个问题
at
2020-04-24 22:06:50
Go问与答
sync.WaitGroup中要求Wait的时候不能Add,这样做的原因是什么呢?
at
2017-09-27 03:09:34
更多>>
最近发布的文章
暂无
更多>>
最近分享的资源
暂无
更多>>
最近发布的项目
暂无
更多>>
最近的评论
2020-04-26 09:48:53
评论了
主题
关于time.Ticker的一个问题
#1
楼
@colinrs
赞,因为粗略看了下源码,往发送ticker.C发送消息是开了goroutine去发的,然后ticker.C的大小是1,如果处理不及时的话,担心发生goroutine泄露;如果官方文档这么说的话就放心了,看来源码还是得仔细看看啊:)
2020-01-19 15:40:47
评论了
主题
纯新手,感觉GOPATH这个环境变量的设计真是奇葩!
#3
楼
@iwhot
岂不美哉
2020-01-17 10:14:44
评论了
主题
全套Go语言开发及区块链视频及资料-应有尽有
895760990@qq.com 谢谢大佬
2017-09-28 05:16:43
评论了
主题
sync.WaitGroup中要求Wait的时候不能Add,这样做的原因是什么呢?
#4
楼
@polaris
代码大致如下,是公司一个不成熟的框架,问题已经改掉了,现在想对这个原理探究一下 ``` // 主逻辑 go Do() <- a.close // a是一个channel定义在其他位置,发现异常就会close掉 // 此时Do内可能才执行到DoSomething_1(), 所以会导致Wait以后执行Add,这个时候就会panic wg.Wait() // Do函数定义如下 func Do() { for { select { case <- a.close: return default: DoSomething_0() go func() { DoSomething_1() wg.Add(1) go func() { defer wg.Done() DoSomething_2() }() DoSomething_3() }() } } } ```
2017-09-28 03:21:21
评论了
主题
sync.WaitGroup中要求Wait的时候不能Add,这样做的原因是什么呢?
#1
楼
@legendlzy
不好意思,恢复没有对准,你看看我在2L贴的图,是waitgroup里面的源码
最新主题
|
最新资源
|
最新评论
X
登录和大家一起探讨吧
用户名
密码
记住登录状态
登录
GitHub 登录
忘记密码?
还不是会员
现在注册
最近的评论