首页 >后端开发 >Golang >如何在 Go 中将整数乘以'time.Duration”?

如何在 Go 中将整数乘以'time.Duration”?

DDD
DDD原创
2024-12-02 22:05:17257浏览

How to Multiply an Integer by `time.Duration` in Go?

问题:在 Go 中将持续时间乘以整数

当尝试通过引入随机延迟来测试并发 goroutine 时,编译器会抛出以下错误:

.\crawler.go:49: invalid operation: rand.Int31n(1000) * time.Millisecond (mismatched types int32 and time.Duration)

解决方案:之间转换类型

出现此错误是因为 int32(rand.Int31n(1000) 的返回类型)与 time.Duration(time.Sleep() 所需的类型)不兼容。要解决此问题,必须在相乘之前将整数值转换为持续时间。这可以使用以下代码来实现:

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

以上是如何在 Go 中将整数乘以'time.Duration”?的详细内容。更多信息请关注PHP中文网其他相关文章!

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