Documentation ¶
Index ¶
- Constants
- Variables
- func EpollCreate(port int) (*epoll, error)
- func GetLogger() logger
- func NewHeaderLenEncoder(headerLen, writeBufferLen int) *headerLenEncoder
- func SetLogger(l logger)
- func TimeEncoder(t time.Time, enc zapcore.PrimitiveArrayEncoder)
- type Conn
- type Decoder
- type Encoder
- type Event
- type Handler
- type Option
- type Server
Constants ¶
View Source
const ( EpollRead = syscall.EPOLLIN | syscall.EPOLLPRI | syscall.EPOLLERR | syscall.EPOLLHUP | unix.EPOLLET | syscall.EPOLLRDHUP EpollClose = uint32(syscall.EPOLLIN | syscall.EPOLLRDHUP) )
对端关闭连接 8193
View Source
const ( EventIn = 1 // 数据流入 EventClose = 2 // 断开连接 EventTimeout = 3 // 检测到超时 )
Variables ¶
View Source
var (
ErrReadTimeout = errors.New("tcp read timeout")
)
Functions ¶
func EpollCreate ¶
func NewHeaderLenEncoder ¶ added in v1.2.0
func NewHeaderLenEncoder(headerLen, writeBufferLen int) *headerLenEncoder
NewHeaderLenEncoder 创建基于头部长度的编码器 headerLen TCP包的头部内容,用来描述这个包的字节长度 writeBufferLen 服务器发送给客户端包的建议长度,当发送的包小于这个值时,会利用到内存池优化
func TimeEncoder ¶
func TimeEncoder(t time.Time, enc zapcore.PrimitiveArrayEncoder)
Types ¶
type Decoder ¶ added in v1.2.0
Decoder 解码器
func NewHeaderLenDecoder ¶ added in v1.2.0
NewHeaderLenDecoder 创建基于头部长度的解码器 headerLen TCP包的头部内容,用来描述这个包的字节长度 readMaxLen 所读取的客户端包的最大长度,客户端发送的包不能超过这个长度
type Handler ¶
type Handler interface { OnConnect(c *Conn) // OnConnect 当TCP长连接建立成功是回调 OnMessage(c *Conn, bytes []byte) // OnMessage 当客户端有数据写入是回调 OnClose(c *Conn, err error) // OnClose 当客户端主动断开链接或者超时时回调,err返回关闭的原因 }
Handler Server 注册接口
type Option ¶ added in v1.1.0
type Option interface {
// contains filtered or unexported methods
}
func WithAcceptGNum ¶ added in v1.1.0
WithAcceptGNum 设置建立连接的goroutine数量
func WithIOEventQueueLen ¶ added in v1.2.1
WithIOEventQueueLen 设置IO事件队列长度,默认值是1024
func WithReadBufferLen ¶ added in v1.5.0
WithReadBufferLen 设置缓存区大小
func WithTimeout ¶ added in v1.1.0
WithTimeout 设置TCP超时检查的间隔时间以及超时时间
Click to show internal directories.
Click to hide internal directories.