我正在尝试编写一个基于套接字的简单go服务器。我只是想知道如何连接。下面的内容知道什么时候停止阅读。(注意:这不是我的代码,例如,我从Go中的Unix套接字复制了它)
package main
import (
"log"
"net"
)
func echoServer(c net.Conn) {
for {
buf := make([]byte, 512)
nr, err := c.Read(buf)
if err != nil {
return
}
data := buf[0:nr]
println("Server got:", string(data))
_, err = c.Write(data)
if err != nil {
log.Fatal("Write: ", err)
}
}
}
func main() {
l, err := net.Listen("unix", "/tmp/echo.sock")
if err != nil {
log.Fatal("listen error:", err)
}
for {
fd, err := l.Accept()
if err != nil {
log.Fatal("accept error:", err)
}
go echoServer(fd)
}
}
是EOF角色还是其他?如果有人可以指向我指向官方go docs链接,这将非常有帮助。谢谢。
慕的地6264312
相关分类