gpt4 book ai didi

logging - 为什么我应该使用 log.Println 而不是 fmt.Println?

转载 作者:IT老高 更新时间:2023-10-28 12:58:17 28 4
gpt4 key购买 nike

来自 log.go (日志包的实现):

167 // Println calls l.Output to print to the logger.
168 // Arguments are handled in the manner of fmt.Println.
169 func (l *Logger) Println(v ...interface{}) { l.Output(2, fmt.Sprintln(v...)) }

log.Println只是 fmt.Sprintln 的函数包装器,为什么要使用它而不是fmt.Printlnfmt.Sprintln ?

有什么实际原因吗?

最佳答案

有两点不同:

  1. 通过包日志打印对并发 goroutines 是安全的(而普通的 fmt 不是)

  2. 日志可以自动添加计时信息。

所以这是两个完全不同的东西。 log 用于记录,fmt 用于格式化。 (好吧,log 使用相同的动词和标志,但这只是方便)。

关于logging - 为什么我应该使用 log.Println 而不是 fmt.Println?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19646889/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com