首页 >后端开发 >Golang >如何在 Go 中正确地将持续时间乘以整数?

如何在 Go 中正确地将持续时间乘以整数?

Linda Hamilton
Linda Hamilton原创
2024-12-17 04:38:24543浏览

How to Correctly Multiply a Duration by an Integer in Go?

Go 中将持续时间乘以整数

当尝试在函数中引入随机延迟来测试并发 goroutine 时,就会出现问题。通过引入以下行,该函数预计最多需要一秒钟才能返回:

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

但是,这种方法会触发错误,指示 int32 和 time.Duration 类型之间不匹配。解决这个问题的关键在于将int32转换为time.Duration:

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

通过将rand.Int31n(1000)得到的int32值转换为time.Duration,两种类型可以是相乘,允许函数休眠最多一秒的随机间隔。

以上是如何在 Go 中正确地将持续时间乘以整数?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn