code: func (rpcClient *ReconnectRPCClient) Close() error {
  	rpcClient.mutex.Lock()
  	defer rpcClient.mutex.Unlock()
  	// If rpc client has not connected yet there is nothing to close.
  	if rpcClient.rpc == nil {
  		return nil
  	}
  	// Reset rpcClient.rpc to allow for subsequent calls to use a new
  	// (socket) connection.
  	clnt := rpcClient.rpc
  	rpcClient.rpc = nil
  	return clnt.Close()
  }
docs: // Close closes the underlying socket file descriptor.