39 lines
626 B
Go
39 lines
626 B
Go
package main
|
|
|
|
import (
|
|
"context"
|
|
"encoding/gob"
|
|
"fmt"
|
|
"net"
|
|
|
|
"go.arsenm.dev/lrpc/client"
|
|
"go.arsenm.dev/lrpc/codec"
|
|
)
|
|
|
|
func main() {
|
|
gob.Register([2]int{})
|
|
|
|
ctx := context.Background()
|
|
|
|
conn, _ := net.Dial("tcp", "localhost:9090")
|
|
c := client.New(conn, codec.Gob)
|
|
defer c.Close()
|
|
|
|
var add int
|
|
c.Call(ctx, "Arith", "Add", [2]int{5, 5}, &add)
|
|
|
|
var sub int
|
|
c.Call(ctx, "Arith", "Sub", [2]int{5, 5}, &sub)
|
|
|
|
var mul int
|
|
c.Call(ctx, "Arith", "Mul", [2]int{5, 5}, &mul)
|
|
|
|
var div int
|
|
c.Call(ctx, "Arith", "Div", [2]int{5, 5}, &div)
|
|
|
|
fmt.Printf(
|
|
"add: %d, sub: %d, mul: %d, div: %d\n",
|
|
add, sub, mul, div,
|
|
)
|
|
}
|