我有一个结构图,如下所示:
type SocketID string
type Socket struct {
socket //...
id string
}
type Channel struct {
sync.Mutex
sockets map[SocketID]Socket
}
我希望能够为其添加子通道,其中每个Socket
属于一个子通道。我尝试将通道结构更改为:
type SubchannelID string
type Channel struct {
sync.Mutex
sockets map[SocketID]Socket
subchannels map[SubchannelID]map[SocketID]Socket
}
但我遇到的问题是从Socket
删除Channel
成为O(n ^ 2)操作,并且每个套接字在sockets
和{{之间重复1}}地图。如何在保持通道和子通道从插座中抽象出来的同时对其进行优化?
答案 0 :(得分:0)
没关系,回答结果很简单:
$.post