优化rpc返回

This commit is contained in:
duanhf2012
2020-03-31 19:56:06 +08:00
parent 9c9f72d559
commit b953d8dfbb
2 changed files with 12 additions and 6 deletions

View File

@@ -228,6 +228,7 @@ func (slf *Server) rpcHandlerAsyncGo(callerRpcHandler IRpcHandler,noReply bool,m
//pCall.done = make( chan *Call,1)
pCall.rpcHandler = callerRpcHandler
pCall.callback = &callback
pCall.Reply = reply
rpcHandler := slf.rpcHandleFinder.FindRpcHandler(handlerName)
if rpcHandler== nil {
err := fmt.Errorf("service method %s.%s not config!", handlerName,methodName)
@@ -245,7 +246,9 @@ func (slf *Server) rpcHandlerAsyncGo(callerRpcHandler IRpcHandler,noReply bool,m
if noReply == false {
req.requestHandle = func(Returns interface{},Err error){
pCall.Err = Err
pCall.Reply = Returns
if Returns!=nil {
pCall.Reply = Returns
}
pCall.rpcHandler.(*RpcHandler).callResponeCallBack<-pCall
}
}