1
Unity3D 네트워킹 라이브러리는 UDP를 사용하며 RPC 호출을위한 메소드를 가지고 있습니다. 내 서버에 UDP를 통한 RPC를 사용하려고하는데 약간의 문제가 있습니다. 클라이언트 코드가 여기GO에서 UDP를 사용하는 RPC
type Args struct {
X, Y int
}
type RequestHandler struct{}
func (self *RequestHandler) Add(args *Args, reply *int) error {
*reply = args.X + args.Y
return nil
}
func main() {
addr := net.UDPAddr{ Port: 5127, IP: net.ParseIP("127.0.0.1") }
handler := new(RequestHandler)
rpc.Register(handler)
conn, err := net.ListenUDP("udp", &addr)
defer conn.Close()
if err != nil {
panic(err)
}
for {
go rpc.ServeConn(conn)
}
}
된다 : 여기에 지금있어 기본 서버 코드의 난이 프로그램을 실행할 때
type Args struct {
X, Y int
}
func main() {
client, err := rpc.Dial("udp", "127.0.0.1:5127")
if err != nil { log.Fatal("dialing:", err) }
// Synchronous call
args := &Args{7,8}
var reply int
err = client.Call("RequestHandler.Add", args, &reply)
if err != nil {
log.Fatal("arith error:", err)
}
fmt.Printf("Result: %d + %d = %d", args.X, args.Y, reply)
}
, 그들은 모두 멈춰 아무 일도 발생하지 않습니다. 내가 도대체 뭘 잘못하고있는 겁니까?