为了账号安全,请及时绑定邮箱和手机立即绑定

在 Golang 中调用同一台服务器上注册的 RPC 方法

在 Golang 中调用同一台服务器上注册的 RPC 方法

Go
忽然笑 2021-09-27 20:48:35
我在 Golang 中为 RPC 的服务器程序中的类型注册了一些方法。我想从客户端以及服务器本身使用这些方法。例如,我有一个注册为 RPC 方法的附加方法,我想从客户端调用它。但是我也想在同一个服务器程序中为其他一些函数调用相同的方法。有没有办法做到这一点?
查看完整描述

2 回答

?
守候你守候我

TA贡献1802条经验 获得超10个赞

我必须自己做这件事。这是一个人为的例子,展示了我在我的案例中所做的:


这是RPC函数...


func (server *Server) RemoteGoroutineCount(request GoroutineCountsRequest, response *GoroutineCountsResponse) error {

    response.Count = runtime.NumGoroutine()

    return nil

}

现在,如果我想在本地调用它,我可以这样做


req := GoroutineCountsRequest{}

res := &GorouteCountsResponse{}

s := &Server{}

err := s.RemoteGoroutineCount(req, res)

// handle error

// Now res has your filled in response

res.NumGoroutines


查看完整回答
反对 回复 2021-09-27
  • 2 回答
  • 0 关注
  • 291 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信