hub.go
func (hub *hub) getChannel(name string) *channel {
	hub.Lock()
	defer hub.Unlock()
	cn, ok := hub.channels[name]
	if ok {
		return cn
	}
	cn = makeChannel(hub, name)
	hub.channels[name] = cn
	go cn.start()
	return cn
}
func (hub *hub) getChannel(name string) *channel {
	hub.Lock()
	defer hub.Unlock()
	cn, ok := hub.channels[name]
	if ok {
		return cn
	}
	cn = makeChannel(hub, name)
	hub.channels[name] = cn
	go cn.start()
	return cn
}
// GetChannel gets or creates new pubsub channel.