一尘不染

如何将持续时间乘以整数?

go

为了测试并发 goroutines,我在一个函数中添加了一行,使它需要一个随机的时间来返回(最多一秒)

time.Sleep(rand.Int31n(1000) * time.Millisecond)

但是,当我编译时,出现此错误

.\crawler.go:49: 无效操作:rand.Int31n(1000) * time.Millisecond(int32 和 time.Duration 类型不匹配)

有任何想法吗?如何乘以持续时间?


阅读 214

收藏
2021-11-01

共1个答案

一尘不染

int32并且time.Duration是不同的类型。您需要将 转换int32为 a time.Duration

time.Sleep(time.Duration(rand.Int31n(1000)) * time.Millisecond)
2021-11-01