@@ -37,7 +37,7 @@ import (
37
37
38
38
type EchoHandler struct {}
39
39
40
- func (h *EchoHandler ) OnOpen (c *pulse .Conn , err error ) {
40
+ func (h *EchoHandler ) OnOpen (c *pulse .Conn ) {
41
41
if err != nil {
42
42
log.Printf (" 连接失败: %v " , err)
43
43
return
@@ -83,7 +83,7 @@ import (
83
83
84
84
type ProtocolHandler struct {}
85
85
86
- func (h *ProtocolHandler ) OnOpen (c *pulse .Conn , err error ) {
86
+ func (h *ProtocolHandler ) OnOpen (c *pulse .Conn ) {
87
87
if err != nil {
88
88
return
89
89
}
@@ -143,7 +143,7 @@ func main() {
143
143
144
144
``` go
145
145
type Callback [T any] interface {
146
- OnOpen (c *Conn, err error ) // 连接建立时调用
146
+ OnOpen (c *Conn) // 连接建立时调用
147
147
OnData (c *Conn, data T ) // 接收到数据时调用
148
148
OnClose (c *Conn, err error ) // 连接关闭时调用
149
149
}
@@ -217,7 +217,7 @@ wrk -t12 -c400 -d30s --script=lua/echo.lua http://127.0.0.1:8080
217
217
218
218
1 . ** 状态管理** :使用 ` SetSession/GetSession ` 存储连接级别的状态
219
219
2 . ** 协议解析** :推荐使用无状态解析函数,避免全局共享状态
220
- 3 . ** 错误处理** :在OnOpen和OnClose中正确处理错误
220
+ 3 . ** 错误处理** :在OnClose中正确处理错误
221
221
4 . ** 内存管理** :及时释放大的临时缓冲区,使用连接池复用连接
222
222
5 . ** 并发安全** :避免在多个goroutine中同时操作同一个连接
223
223
0 commit comments