首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Go语言中常见100问题-#75 Providing a wrong time duration

    提供错误的duration时间值 标准库中的某些函数或方法会接受一个time.Duration(持续时间)类型参数,然而该类型是一个int64类型的别名,新手Go开发人员在刚开始使用的时候可能会感到困惑并提供了错误的持续时间值...例如有Java或JavaScript语言背景的开发人员习惯传递一个数字给参数为time.Duration的函数或方法。 为了解释清楚这个常见的错误,通过具体的例子进行说明。...然而,time.Duration表示两个时间点之间经过的时间,它的单位是纳秒。这里传的是1000纳秒,也就是1微秒。所以问题原因是没有搞清楚time.Duration时间单位。...因此,如果我们想创建一个周期为1微秒的定时器,为了避免上面的问题,好的处理方法是不直接传递一个int64类型的数给time.NewTicker,而是始终采用time.Duration提供的API,像下面这样...为了避免这类错误,我们应该始终使用time.Duration的API,传参时带上单位。像time.Microsecond = 1 * time.Microsecond这样采用「数*时间单位」形式。

    16930
    领券