Documentation ¶
Index ¶
- Variables
- func RecvChanEveryNew(cfg interface{}) func() chan *protocol.Packet
- type FNewReceiver
- type NewListener
- type Receiver
- func (r *Receiver) Armour() conn.Armour
- func (r *Receiver) BindArmour(a conn.Armour)
- func (r *Receiver) Close()
- func (r *Receiver) Done() <-chan struct{}
- func (r *Receiver) ID() uint64
- func (r *Receiver) OnNetClosed()
- func (r *Receiver) RecvChan() <-chan *protocol.Packet
- func (r *Receiver) Response(reqHeader *protocol.Header, rsp protocol.Message) error
- func (r *Receiver) ResponseWithError(reqHeader *protocol.Header, ec uint32, em string) error
- func (r *Receiver) Send(msg protocol.Message) error
- func (r *Receiver) Sender() *conn.Sender
- type RecvChanEveryNewConfig
- type Server
- type ServerConfig
Constants ¶
This section is empty.
Variables ¶
View Source
var DefaultFRecvChan conn.FRecvChan
View Source
var (
ErrNoFNewReceiver = errors.New("must set FNewReceiver callback function to Server instance")
)
View Source
var ServerVersion = "0.0.1"
Functions ¶
func RecvChanEveryNew ¶ added in v0.1.0
Types ¶
type FNewReceiver ¶ added in v0.1.0
type FNewReceiver func(r *Receiver)
type NewListener ¶ added in v0.1.0
var DefaultNewListener NewListener
type Receiver ¶ added in v0.1.0
type Receiver struct { Conn conn.Connection CBOnNetClosed func(*Receiver) // contains filtered or unexported fields }
接收者实例, 一个已建立的客户端连接, 管理客户端连接的状态和消息收发. 对用户代码而言, 一个Receiver实例就是一个客户端
func (*Receiver) BindArmour ¶ added in v0.1.0
func (*Receiver) OnNetClosed ¶ added in v0.1.0
func (r *Receiver) OnNetClosed()
func (*Receiver) ResponseWithError ¶ added in v0.1.0
type RecvChanEveryNewConfig ¶ added in v0.1.0
type RecvChanEveryNewConfig struct {
QueueLen int `json:"queueLen,omitempty"`
}
type Server ¶
type Server struct { Config *ServerConfig NewListener NewListener FRecvChan conn.FRecvChan FNewReceiver FNewReceiver // contains filtered or unexported fields }
服务对象定义
type ServerConfig ¶
type ServerConfig struct {
Listener interface{}
}
Click to show internal directories.
Click to hide internal directories.