我可以依赖地图的随机迭代顺序来实现Web应用程序中客户端的随机"配对"吗?我试过环顾四周,但似乎无法找到这种随机性随机性的细分.
该算法看起来像:
var clients map[Client]struct{}
func PairClient(c Client) (Client, error) {
for m := range clients {
if m != c {
return m, nil
}
}
return nil, fmt.Errorf("lobby: insufficient number of clients")
}
Run Code Online (Sandbox Code Playgroud)
当有超过1000个连接的客户端时,这是否足够,或者我应该维护一个单独的客户端片并从中随机选择?