昨天我在RPC中玩了很多,并且有一种我无法理解的行为。
我写了一个简单的RPC服务器,它在VM中运行,监听连接并为斐波纳契提供单一方法……
您不检查代码中的错误:
divCall = client.Go("Fibonacci.Calculate", args, &reply, nil) go func() { replyCall := <-divCall.Done // -- Must check replyCall.Error here --. r := replyCall.Reply.(*int) log.Debug("reply: ", r) }()
也就是说,我认为这种行为是特殊的,可能还有更多。