在 Go 中运行 time.Now() 函数Windows 7x64 上的版本 1.3 始终生成以下日期和时间2009-11-10 23:00:00 0000 UTC。虽然这种现象在 Go Playground 上是预料之中的(由于其固定的时间设置),但它在本地机器上的出现可能会令人费解。
这种异常行为背后的原因是 这个特定的日期和时间标记Go 语言的生日。 Go 的创建者 Rob Pike、Robert Griesemer 和 Ken Thompson 于 2009 年 11 月 10 日发布了 Go 的初始公共原型。
此时间戳在 Go 运行时中用作“虚拟” " 帮助调试的值。如果系统时间设置不正确或无法确定,运行时将使用此回退时间戳来确保程序仍然可以运行。
升级到 Go 版本 1.3 并重新启动计算机可以解决此问题对于某些用户。但需要注意的是,如果系统时间仍未设置或配置不正确,time.Now() 函数可能会继续返回“Gobirthday”时间戳。
以上是为什么 Go 的 time.Now() 有时会返回 2009-11-10 23:00:00 UTC?的详细内容。更多信息请关注PHP中文网其他相关文章!