为什么 fmt.Print() returns 没人处理就报错
Why does fmt.Print() returns an error if no one handles it
我经常被这个问题折磨,为什么 fmt.Print() return 会出错?
我从来没有遇到过需要它的情况。
在 Java and Python 中,打印到标准输出通常不会 return 出错。
在 C# 中,打印到标准输出可能导致 OOMException。
这在理论上可能是 OOM,但是尝试写一些东西是没有意义的,因为这将是一个不可恢复的恐慌,程序很可能会被杀死。
或者这可能是必要的,以便程序可以理解出口已关闭?
您无法检测管道中的进程是否在不写入的情况下终止,对吗?
有没有人必须处理这个错误?
打印到 stdout 可能会 return 出错,例如,如果 stdout 在打印时关闭。如果将 stdout 重定向到管道或文件,这尤其重要。
虽然大多数应用程序会忽略此错误。
我经常被这个问题折磨,为什么 fmt.Print() return 会出错?
我从来没有遇到过需要它的情况。
在 Java and Python 中,打印到标准输出通常不会 return 出错。 在 C# 中,打印到标准输出可能导致 OOMException。
这在理论上可能是 OOM,但是尝试写一些东西是没有意义的,因为这将是一个不可恢复的恐慌,程序很可能会被杀死。
或者这可能是必要的,以便程序可以理解出口已关闭? 您无法检测管道中的进程是否在不写入的情况下终止,对吗?
有没有人必须处理这个错误?
打印到 stdout 可能会 return 出错,例如,如果 stdout 在打印时关闭。如果将 stdout 重定向到管道或文件,这尤其重要。
虽然大多数应用程序会忽略此错误。