rpc-sample/main.go

37 lines
643 B
Go

package main
import (
"log"
"net"
"net/rpc"
"strings"
"myschools.me/suguo/rpc-sample/server"
)
func main() {
// rpc.HandleHTTP()
// err := http.ListenAndServe(":1234", nil)
// if err != nil {
// fmt.Println(err.Error())
// }
defer func() {
err := recover()
if err == nil {
log.Fatal("no error")
}
if !strings.Contains(err.(error).Error(), "reading body EOF") {
log.Fatal("expected `reading body EOF', got", err)
}
}()
rpc.Register(&server.Hello{})
listen, err := net.Listen("tcp", "127.0.0.1:1234") //端口为0表示任意端口
if err != nil {
panic(err)
}
defer listen.Close()
rpc.Accept(listen)
}