更新时间: 2023-06-13 07:22:50#go 校验实现了全部接口go 校验实现了全部接口 type EventHandler interface { OnOpen(c Conn) context.Context OnRead(ctx context.Context, c Conn) OnClose(ctx context.Context, c Conn) } var _ EventHandler = (*eventHandler)(nil) // TODO 校验实现了全部接口 type eventHandler struct{} func (d *eventHandler) OnOpen(c Conn) context.Context { return context.Background() } func (d *eventHandler) OnClose(_ context.Context, c Conn) { fmt.Printf("[OnClose] conn: %d closed\n", c.Fd()) } func (d *eventHandler) OnRead(ctx context.Context, c Conn) { // todo set reader buffer b := make([]byte, 1024) n, err := c.Read(b[:cap(b)]) if err != nil { fmt.Println("OnRead err:", err) } fmt.Println("read data: ", string(b[:n])) n, err = c.Write(b[:n]) fmt.Println("write len:", n) }