network

package
v1.6.2 Latest Latest
Warning

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

Go to latest
Published: Mar 27, 2023 License: MIT Imports: 16 Imported by: 0

Documentation

Index

Constants

View Source
const (
	SSF_NULL = iota
	SSF_RUN  = iota
	SSF_STOP = iota //已经关闭
)
View Source
const (
	CLIENT_CONNECT = iota //对外
	SERVER_CONNECT = iota //对内
)
View Source
const (
	MAX_SEND_CHAN  = 512
	HEART_TIME_OUT = 60
)
View Source
const (
	PACKET_LEN_BYTE  = 1
	PACKET_LEN_WORD  = 2
	PACKET_LEN_DWORD = 4
)
View Source
const (
	IDLE_TIMEOUT    = iota
	CONNECT_TIMEOUT = iota
	CONNECT_TYPE    = iota
)

Variables

View Source
var (
	DISCONNECTINT = crc32.ChecksumIEEE([]byte("DISCONNECT"))
	HEART_PACKET  = crc32.ChecksumIEEE([]byte("heardpacket"))
)

Functions

This section is empty.

Types

type ClientClose

type ClientClose func(id uint32) error

type ClientSocket

type ClientSocket struct {
	Socket
	// contains filtered or unexported fields
}

func (*ClientSocket) Connect

func (c *ClientSocket) Connect() bool

func (*ClientSocket) DoSend

func (this *ClientSocket) DoSend(buff []byte) int

func (*ClientSocket) Init

func (c *ClientSocket) Init(ip string, port int, params ...OpOption) bool

func (*ClientSocket) OnDisconnect

func (c *ClientSocket) OnDisconnect()

func (*ClientSocket) OnNetFail

func (c *ClientSocket) OnNetFail(int)

func (*ClientSocket) Restart

func (c *ClientSocket) Restart() bool

func (*ClientSocket) Run

func (c *ClientSocket) Run() bool

func (*ClientSocket) Send

func (c *ClientSocket) Send(head rpc.RpcHead, packet rpc.Packet) int

func (*ClientSocket) SendMsg

func (c *ClientSocket) SendMsg(head rpc.RpcHead, funcName string, params ...interface{})

func (*ClientSocket) SendPacket

func (this *ClientSocket) SendPacket(head rpc.RpcHead, funcName string, msg proto.Message) int

func (*ClientSocket) Start

func (c *ClientSocket) Start() bool

type HandlePacket

type HandlePacket func(buff []byte)

type IClientSocket

type IClientSocket interface {
	ISocket
}

type IServerSocket

type IServerSocket interface {
	ISocket

	AssignClientId() uint32
	GetClientById(uint32) *ServerSocketClient
	LoadClient() *ServerSocketClient
	AddClinet(*net.TCPConn, string, int) *ServerSocketClient
	DelClinet(*ServerSocketClient) bool
	StopClient(uint32)
}

type IServerSocketClient

type IServerSocketClient interface {
	ISocket
}

type ISocket

type ISocket interface {
	Init(string, int, ...OpOption) bool
	Start() bool
	Stop() bool
	Run() bool
	Restart() bool
	Connect() bool
	Disconnect(bool) bool
	OnNetFail(int)
	Clear()
	Close()
	SendMsg(rpc.RpcHead, string, ...interface{})
	Send(rpc.RpcHead, rpc.Packet) int
	CallMsg(rpc.RpcHead, string, ...interface{}) //回调消息处理

	GetId() uint32
	GetState() int32
	SetState(int32)
	SetReceiveBufferSize(int)
	GetReceiveBufferSize() int
	SetMaxPacketLen(int)
	GetMaxPacketLen() int
	BindPacketFunc(PacketFunc)
	SetConnectType(int)
	SetConn(net.Conn)
	HandlePacket([]byte)

	SetClientClose(ClientClose)
	GetClientClose() ClientClose
}

type Op

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

type OpOption

type OpOption func(*Op)

func WithKcp

func WithKcp() OpOption

type PacketConfig

type PacketConfig struct {
	MaxPacketLen *int
	Func         HandlePacket
}

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

type PacketFunc

type PacketFunc func(packet rpc.Packet) bool //回调函数

type PacketParser

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

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

func NewPacketParser

func NewPacketParser(conf PacketConfig) PacketParser

func (*PacketParser) Read

func (p *PacketParser) Read(dat []byte) bool

func (*PacketParser) Write

func (p *PacketParser) Write(dat []byte) []byte

type ServerSocket

type ServerSocket struct {
	Socket
	// contains filtered or unexported fields
}

func (*ServerSocket) AddClinet

func (s *ServerSocket) AddClinet(conn net.Conn, addr string, connectType int) *ServerSocketClient

func (*ServerSocket) AssignClientId

func (s *ServerSocket) AssignClientId() uint32

func (*ServerSocket) ClientSocket

func (s *ServerSocket) ClientSocket(ctx context.Context) *ServerSocketClient

ClientSocket 给客户发送消息

func (*ServerSocket) Close

func (s *ServerSocket) Close()

func (*ServerSocket) Connect

func (s *ServerSocket) Connect() bool

func (*ServerSocket) DelClinet

func (s *ServerSocket) DelClinet(client *ServerSocketClient) bool

func (*ServerSocket) Disconnect

func (s *ServerSocket) Disconnect(bool) bool

func (*ServerSocket) GetClientById

func (s *ServerSocket) GetClientById(id uint32) *ServerSocketClient

func (*ServerSocket) Init

func (s *ServerSocket) Init(ip string, port int, params ...OpOption) bool

func (*ServerSocket) LoadClient

func (s *ServerSocket) LoadClient() *ServerSocketClient

func (*ServerSocket) OnNetFail

func (s *ServerSocket) OnNetFail(int)

func (*ServerSocket) Restart

func (s *ServerSocket) Restart() bool

func (*ServerSocket) Run

func (s *ServerSocket) Run() bool

func (*ServerSocket) RunKcp

func (s *ServerSocket) RunKcp() bool

func (*ServerSocket) Send

func (s *ServerSocket) Send(head rpc.RpcHead, packet rpc.Packet) int

func (*ServerSocket) SendMsg

func (s *ServerSocket) SendMsg(head rpc.RpcHead, funcName string, params ...interface{})

func (*ServerSocket) SendPacket

func (s *ServerSocket) SendPacket(head rpc.RpcHead, funcName string, packet proto.Message) int

func (*ServerSocket) Start

func (s *ServerSocket) Start() bool

func (*ServerSocket) StopClient

func (s *ServerSocket) StopClient(id uint32)

type ServerSocketClient

type ServerSocketClient struct {
	Socket

	Property any
	// contains filtered or unexported fields
}

func (*ServerSocketClient) Close

func (s *ServerSocketClient) Close()

func (*ServerSocketClient) DoSend

func (s *ServerSocketClient) DoSend(buff []byte) int

func (*ServerSocketClient) GetProperty

func (s *ServerSocketClient) GetProperty() (p any)

获取链接属性

func (*ServerSocketClient) Init

func (s *ServerSocketClient) Init(ip string, port int, params ...OpOption) bool

func (*ServerSocketClient) OnNetFail

func (s *ServerSocketClient) OnNetFail(error int)

func (*ServerSocketClient) RemoveProperty

func (s *ServerSocketClient) RemoveProperty()

移除链接属性

func (*ServerSocketClient) Run

func (s *ServerSocketClient) Run() bool

func (*ServerSocketClient) Send

func (s *ServerSocketClient) Send(head rpc.RpcHead, packet rpc.Packet) int

func (*ServerSocketClient) SendLoop

func (s *ServerSocketClient) SendLoop() bool

func (*ServerSocketClient) SendMsg

func (s *ServerSocketClient) SendMsg(head rpc.RpcHead, funcName string, params ...interface{}) int

func (*ServerSocketClient) SendPacket

func (s *ServerSocketClient) SendPacket(head rpc.RpcHead, funcName string, msg proto.Message) int

func (*ServerSocketClient) SetProperty

func (s *ServerSocketClient) SetProperty(p any)

设置链接属性

func (*ServerSocketClient) Start

func (s *ServerSocketClient) Start() bool

func (*ServerSocketClient) Stop

func (s *ServerSocketClient) Stop() bool

func (*ServerSocketClient) Update

func (s *ServerSocketClient) Update()

heart

type Socket

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

func (*Socket) BindPacketFunc

func (this *Socket) BindPacketFunc(callfunc PacketFunc)

func (*Socket) CallMsg

func (this *Socket) CallMsg(head rpc.RpcHead, funcName string, params ...interface{})

func (*Socket) Clear

func (this *Socket) Clear()

func (*Socket) Close

func (this *Socket) Close()

func (*Socket) Connect

func (this *Socket) Connect() bool

func (*Socket) Disconnect

func (this *Socket) Disconnect(bool) bool

func (*Socket) GetClientClose

func (this *Socket) GetClientClose() ClientClose

func (*Socket) GetId

func (this *Socket) GetId() uint32

func (*Socket) GetMaxPacketLen

func (this *Socket) GetMaxPacketLen() int

func (*Socket) GetReceiveBufferSize

func (this *Socket) GetReceiveBufferSize() int

func (*Socket) GetState

func (this *Socket) GetState() int32

func (*Socket) HandlePacket

func (this *Socket) HandlePacket(buff []byte)

func (*Socket) Init

func (this *Socket) Init(ip string, port int, params ...OpOption) bool

virtual

func (*Socket) OnNetFail

func (this *Socket) OnNetFail(int)

func (*Socket) Restart

func (this *Socket) Restart() bool

func (*Socket) Run

func (this *Socket) Run() bool

func (*Socket) Send

func (this *Socket) Send(rpc.RpcHead, rpc.Packet) int

func (*Socket) SendMsg

func (this *Socket) SendMsg(head rpc.RpcHead, funcName string, params ...interface{})

func (*Socket) SetClientClose

func (this *Socket) SetClientClose(c ClientClose)

func (*Socket) SetConn

func (this *Socket) SetConn(conn net.Conn)

func (*Socket) SetConnectType

func (this *Socket) SetConnectType(nType int)

func (*Socket) SetMaxPacketLen

func (this *Socket) SetMaxPacketLen(maxReceiveSize int)

func (*Socket) SetReceiveBufferSize

func (this *Socket) SetReceiveBufferSize(maxSendSize int)

func (*Socket) SetState

func (this *Socket) SetState(state int32)

func (*Socket) Start

func (this *Socket) Start() bool

func (*Socket) Stop

func (this *Socket) Stop() bool

Jump to

Keyboard shortcuts

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