【发布时间】:2020-03-15 13:42:26
【问题描述】:
在 Go 的标准库中,网络系统调用 Sendto() 如下所示:
func Sendto(fd Handle, p []byte, flags int, to Sockaddr) (err error)
Unix:
func Sendto(fd int, p []byte, flags int, to Sockaddr) (err error)
但是,底层系统调用返回的是所有操作系统上发送的字节数(Linux,Windows),那么为什么 Go 只返回一个错误呢?
【问题讨论】:
-
在进行
sendto设计时可能会出错。返回值通常很重要。Sendmsg同样应该返回发送的字节数。
标签: sockets go network-programming system-calls