chanrpc

package
v0.0.0-...-2824937 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 2, 2020 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CallInfo

type CallInfo struct {
	// contains filtered or unexported fields
}

type Client

type Client struct {
	ChanAsynRet chan *RetInfo
	// contains filtered or unexported fields
}

func NewClient

func NewClient(l int) *Client

func (*Client) AsynCall

func (c *Client) AsynCall(id interface{}, _args ...interface{})

func (*Client) Attach

func (c *Client) Attach(s *Server)

func (*Client) Call0

func (c *Client) Call0(id interface{}, args ...interface{}) error

func (*Client) Call1

func (c *Client) Call1(id interface{}, args ...interface{}) (interface{}, error)

func (*Client) CallN

func (c *Client) CallN(id interface{}, args ...interface{}) ([]interface{}, error)

func (*Client) Cb

func (c *Client) Cb(ri *RetInfo)

func (*Client) Close

func (c *Client) Close()

func (*Client) Idle

func (c *Client) Idle() bool

type RetInfo

type RetInfo struct {
	// contains filtered or unexported fields
}

type Server

type Server struct {
	ChanCall chan *CallInfo // 用户接收RPC调用的chan
	// contains filtered or unexported fields
}

one server per goroutine (goroutine not safe) one client per goroutine (goroutine not safe)

func NewServer

func NewServer(l int) *Server

func (*Server) Call0

func (s *Server) Call0(id interface{}, args ...interface{}) error

goroutine safe

func (*Server) Call1

func (s *Server) Call1(id interface{}, args ...interface{}) (interface{}, error)

goroutine safe

func (*Server) CallN

func (s *Server) CallN(id interface{}, args ...interface{}) ([]interface{}, error)

goroutine safe

func (*Server) Close

func (s *Server) Close()

func (*Server) Exec

func (s *Server) Exec(ci *CallInfo)

func (*Server) Go

func (s *Server) Go(id interface{}, args ...interface{})

goroutine safe

func (*Server) Open

func (s *Server) Open(l int) *Client

goroutine safe

func (*Server) Register

func (s *Server) Register(id interface{}, f interface{})

you must call the function before calling Open and Go

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL