tcp

package
v0.0.0-...-78613ec Latest Latest
Warning

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

Go to latest
Published: Oct 9, 2021 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ConnSet

type ConnSet map[net.Conn]struct{}

type MsgParser

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

-------------- | len | data | --------------

func NewMsgParser

func NewMsgParser() *MsgParser

func (*MsgParser) Read

func (p *MsgParser) Read(conn *TCPConn) ([]byte, error)

goroutine safe

func (*MsgParser) SetByteOrder

func (p *MsgParser) SetByteOrder(littleEndian bool)

It's dangerous to call the method on reading or writing

func (*MsgParser) SetMsgLen

func (p *MsgParser) SetMsgLen(lenMsgLen int, minMsgLen uint32, maxMsgLen uint32)

It's dangerous to call the method on reading or writing

func (*MsgParser) Write

func (p *MsgParser) Write(conn *TCPConn, args ...[]byte) error

goroutine safe

type TCPClient

type TCPClient struct {
	sync.Mutex
	Addr            string
	ConnNum         int
	ConnectInterval time.Duration
	PendingWriteNum int
	AutoReconnect   bool
	NewAgent        func(*TCPConn) network.Agent

	// msg parser
	LenMsgLen    int
	MinMsgLen    uint32
	MaxMsgLen    uint32
	LittleEndian bool
	// contains filtered or unexported fields
}

func (*TCPClient) Close

func (client *TCPClient) Close()

func (*TCPClient) Start

func (client *TCPClient) Start()

type TCPConn

type TCPConn struct {
	sync.Mutex
	// contains filtered or unexported fields
}

func (*TCPConn) Close

func (tcpConn *TCPConn) Close()

func (*TCPConn) Destroy

func (tcpConn *TCPConn) Destroy()

func (*TCPConn) LocalAddr

func (tcpConn *TCPConn) LocalAddr() net.Addr

func (*TCPConn) Read

func (tcpConn *TCPConn) Read(b []byte) (int, error)

func (*TCPConn) ReadMsg

func (tcpConn *TCPConn) ReadMsg() ([]byte, error)

func (*TCPConn) RemoteAddr

func (tcpConn *TCPConn) RemoteAddr() net.Addr

func (*TCPConn) Write

func (tcpConn *TCPConn) Write(b []byte)

b must not be modified by the others goroutines

func (*TCPConn) WriteMsg

func (tcpConn *TCPConn) WriteMsg(args ...[]byte) error

type TCPServer

type TCPServer struct {
	Addr            string
	MaxConnNum      int
	PendingWriteNum int
	NewAgent        func(*TCPConn) network.Agent

	// msg parser
	LenMsgLen    int
	MinMsgLen    uint32
	MaxMsgLen    uint32
	LittleEndian bool
	// contains filtered or unexported fields
}

func (*TCPServer) Close

func (server *TCPServer) Close()

func (*TCPServer) Start

func (server *TCPServer) Start()

Jump to

Keyboard shortcuts

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