fmt.printf 为什么能输出整个缓冲数据?

junliuxian · 2017-11-21 12:57:23 · 1494 次点击

我感觉不像是 fmt 与 log 的问题,如果是设置了缓冲区,每次打印不会超过这个值。另外怎么还有 this 这种操作

#2
更多评论
polaris
社区,需要你我一同完善!

fmt.Printf 是输出到 os.Stdout,它是行缓冲的,而 log.Printf 是输出到 os.Stderr,这是无缓冲的。所以有这个差异!

#1
polaris
社区,需要你我一同完善!

你可以 log.SetOutput(os.Stdout) 试试,看看结果是不是和 fmt.Printf 一样了!

PS: this 应该是它代码内部的,不用关心。

#3