go time.Sleep睡眠指定时间实例详解(小时级到纳秒级)
Aiky哇 人气:0首先:time.sleep单位为:1ns (纳秒)
转换单位:
1纳秒 =1000皮秒
1纳秒 =0.001 微秒
1纳秒 =0.000 001毫秒
1纳秒 =0.000 000 001秒
go用来指定睡眠时间的函数为time.Sleep,接口为:
// Sleep pauses the current goroutine for at least the duration d. // A negative or zero duration causes Sleep to return immediately. func Sleep(d Duration)
传入的为一个Duration,所以如果想睡眠5s钟,不能直接写 time.Sleep(5) ,而应该写time.Sleep(5 * time.Second)
其中time.Second就是一个Duration类型,表示1s的时间间隔,乘系数5就得到5s的时间间隔。
除了time.Second外,go还提供了不同的时间单位:
const ( Nanosecond Duration = 1 Microsecond = 1000 * Nanosecond Millisecond = 1000 * Microsecond Second = 1000 * Millisecond Minute = 60 * Second Hour = 60 * Minute )
其中,
Nanosecond表示1纳秒的时间间隔
Microsecond表示1微妙的时间间隔
Millisecond表示1毫秒的时间间隔
Second表示1秒的时间间隔
Minute表示1分钟的时间间隔
Hour表示1小时的时间间隔
想要睡眠的时间可以使用以上的常量自由组合,
比如睡眠1小时10分5秒:
time.Sleep(1*time.Hour + 10*time.Minute + 5*time.Second)
总结
加载全部内容