Shitaibin / shitaibin.github.io

博客:Go语言、区块链
http://lessisbetter.site
67 stars 21 forks source link

探索Golang定时器的陷阱 | Go语言充电站 #67

Open Shitaibin opened 4 years ago

Shitaibin commented 4 years ago

http://lessisbetter.site/2018/09/04/explore-golang-timer/

所谓陷阱,就是它不是你认为的那样,这种认知误差可能让你的软件留下隐藏Bug。刚好Timer就有3个陷阱,我们会讲1)Reset的陷阱和2)通道的陷阱,3)Stop的陷阱与Reset的陷阱类似,自己探索吧。 Reset的陷阱在哪Timer.Reset()函数的返回值是bool类型,我们看一个问题三连: 它的返回值代表什么呢? 我们想要的成功是什么? 失败是什么? 成功:一段时间之后定时器超时,