Забележка: По-скоро се интересувам от разбирането на общи концепции/модели на Go, отколкото от решаването на този измислен пример.
Пакетът Go (golang) WebSocket предоставя тривиален пример за ехо сървър, който се свежда до нещо като този:
func EchoServer(ws *websocket.Conn) { io.Copy(ws, ws); }
func main() {
http.Handle("/echo", websocket.Handler(EchoServer));
http.ListenAndServe(":12345", nil);
}
Сървърът обработва едновременни връзки и се опитвам да го надстроя до основен сървър за чат, като повторя въвеждането на всички свързани клиенти.
Как да осигуря достъп на манипулатора на EchoServer до всяка от отворените връзки?