INNER CODE UNIT · Go

func

yahoo/vssh · client_mem.go:35

func (c clients) add(client *clientAttr) {
	shard := c.getShard(client.addr)
	c[shard].Lock()
	defer c[shard].Unlock()
	c[shard].clients[client.addr] = client
}
func (c clients) del(key string) {
	shard := c.getShard(key)
	c[shard].Lock()
	defer c[shard].Unlock()
	delete(c[shard].clients, key)
}
func (c clients) get(key string) (*clientAttr, bool) {
	shard := c.getShard(key)
	c[shard].RLock()
	defer c[shard].RUnlock()
	v, ok := c[shard].clients[key]
	return v, ok

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…