相关疑难解决方法(0)

Go的时间有多精确,真的吗?

Go的时间包声称给出了纳秒精度. http://golang.org/src/pkg/time/time.go

我想知道它是如何实现的,如果我可以相信它.我的疑虑来自Python,它清楚地记录了它的困难和时间限制:

来自http://docs.python.org/2/library/time.html

各种实时函数的精度可能低于表示其值或参数的单位所建议的精度.例如,在大多数Unix系统上,时钟"滴答"仅为每秒50或100次.

另一方面,time()和sleep()的精度优于Unix等价:时间表示为浮点数,time()返回最准确的可用时间(使用Unix gettimeofday()),以及sleep()将接受非零分数的时间(Unix select()用于实现此功能,如果可用).

由于操作系统给python带来了如此艰难的时期,Go如何实现其纳秒精度?

time go

20
推荐指数
2
解决办法
5157
查看次数

产生随机布尔

生成随机布尔的最快方法是什么?

目前我正在这样做:

package main

import (
    "fmt"
    "math/rand"
    "time"
)

// random generator
var src = rand.NewSource(time.Now().UnixNano())
var r = rand.New(src)

func main() {
    for i := 0; i < 100; i++ {
        // generate a random boolean and print it 
        fmt.Printf("bool: %s\n", r.Intn(2) != 0)
    }
}
Run Code Online (Sandbox Code Playgroud)

我该如何改善呢?

random boolean go

5
推荐指数
2
解决办法
4055
查看次数

标签 统计

go ×2

boolean ×1

random ×1

time ×1