Documentation ¶
Index ¶
- Constants
- Variables
- func DecodeMessage(msgid uint32, data []byte) (interface{}, error)
- func EncodeMessage(msg interface{}) (data []byte, msgid uint32, err error)
- func MessageFullName(rtype reflect.Type) string
- func RegisterCodec(c Codec)
- func RegisterMessageMeta(codecName string, name string, msgType reflect.Type, id uint32)
- type Codec
- type EventFunc
- type EventQueue
- type MessageMeta
- type Peer
- type Session
- type SessionAccessor
Constants ¶
View Source
const DefaultQueueSize = 100
Variables ¶
View Source
var ( ErrMessageNotFound = errors.New("msg not exists") ErrCodecNotFound = errors.New("codec not found") )
Functions ¶
func DecodeMessage ¶
func EncodeMessage ¶
func RegisterCodec ¶
func RegisterCodec(c Codec)
Types ¶
type Codec ¶
type Codec interface { // 将数据转换为字节数组 Encode(interface{}) ([]byte, error) // 将字节数组转换为数据 Decode([]byte, interface{}) error // 编码器的名字 Name() string }
func FetchCodec ¶
type EventQueue ¶
type MessageMeta ¶
type MessageMeta struct { Type reflect.Type // 消息类型 Name string // 消息名称 ID uint32 // 消息ID Codec Codec // 消息用到的编码 }
消息元信息
type Peer ¶
type Peer interface { // 开启端,传入地址 Start(address string) Peer // 停止通讯端 Stop() // 获取队列 Queue() EventQueue // 设置事件回调函数 SetEvent(f EventFunc) // 通讯端名称 Name() string // 设置通讯端名称 SetName(string) SessionAccessor }
发起和接受连接的通讯端
Click to show internal directories.
Click to hide internal directories.