mirror of
https://github.com/zoriya/Kyoo.git
synced 2025-05-24 02:02:36 -04:00
29 lines
478 B
Go
29 lines
478 B
Go
package main
|
|
|
|
import "sync"
|
|
|
|
type Server struct {
|
|
clients map[*Client]struct{}
|
|
mutex sync.RWMutex
|
|
}
|
|
|
|
func NewServer() *Server {
|
|
return &Server{
|
|
clients: make(map[*Client]struct{}),
|
|
}
|
|
}
|
|
|
|
func (server *Server) RegisterClient(client *Client) {
|
|
server.mutex.Lock()
|
|
defer server.mutex.Unlock()
|
|
|
|
server.clients[client] = struct{}{}
|
|
}
|
|
|
|
func (server *Server) DeleteClient(client *Client) {
|
|
server.mutex.Lock()
|
|
defer server.mutex.Unlock()
|
|
|
|
delete(server.clients, client)
|
|
}
|