| 123456789101112131415161718192021222324252627282930313233343536373839 |
- // rpc_client.go
- // if the server is not started:
- // can't get the server to start, so client stops immediately with error:
- // 2011/08/01 16:08:05 Error dialing:dial tcp :1234:
- // The requested address is not valid in its context.
- // with serverAddress = localhost:
- // 2011/08/01 16:09:23 Error dialing:dial tcp 127.0.0.1:1234:
- // No connection could be made because the target machine actively refused it.
- package main
- import (
- "fmt"
- "log"
- "net/rpc"
- "./rpc_objects"
- )
- const serverAddress = "localhost"
- func main() {
- client, err := rpc.DialHTTP("tcp", serverAddress + ":1234")
- if err != nil {
- log.Fatal("Error dialing:", err)
- }
- // Synchronous call
- args := &rpc_objects.Args{7, 8}
- var reply int
- err = client.Call("Args.Multiply", args, &reply)
- if err != nil {
- log.Fatal("Args error:", err)
- }
- fmt.Printf("Args: %d * %d = %d", args.N, args.M, reply)
- }
- /* Output:
- Starting Process E:/Go/GoBoek/code_examples/chapter_14/rpc_client.exe ...
- Args: 7 * 8 = 56
- End Process exit status 0
- */
|