| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- package main
- import (
- "context"
- "flag"
- "fmt"
- "github.com/smallnest/rpcx/server"
- )
- var (
- addr = flag.String("addr", "localhost:8972", "server address")
- )
- type Args struct {
- A int
- B int
- }
- type Reply struct {
- C int
- }
- type Arith struct{}
- // the second parameter is not a pointer
- func (t *Arith) Mul(ctx context.Context, args Args, reply *Reply) error {
- reply.C = args.A * args.B
- fmt.Println("C=", reply.C)
- return nil
- }
- func main() {
- flag.Parse()
- s := server.NewServer()
- //s.Register(new(Arith), "")
- s.RegisterName("Arith", new(Arith), "")
- err := s.Serve("tcp", *addr)
- if err != nil {
- panic(err)
- }
- }
|