diff --git a/examples/chat/client.go b/examples/chat/client.go index 2646847..eb37530 100644 --- a/examples/chat/client.go +++ b/examples/chat/client.go @@ -127,8 +127,11 @@ func serveWs(hub *Hub, w http.ResponseWriter, r *http.Request) { log.Println(err) return } + client := &Client{hub: hub, conn: conn, send: make(chan []byte, 256)} client.hub.register <- client + + // exit from serveWs, now HTTP server can free unneeded things go client.writePump() - client.readPump() + go client.readPump() }