func NewPubSub() *PubSub {
	return &PubSub{
		subMap: map[string]subscriberSet{},
		idMap:  map[Subscriber]util.StringSet{},
	}
}
// NewPubSub - construct a PubSub
construct a PubSub
// NewPubSub - construct a PubSub
func NewPubSub() *PubSub {
	return &PubSub{
		subMap: map[string]subscriberSet{},
		idMap:  map[Subscriber]util.StringSet{},
	}
}
func NewPubSub ( ) * PubSub { return & PubSub { subMap : map [ string ] subscriberSet { } , idMap : map [ Subscriber ] util . StringSet { } , } }
construct a PubSub
construct a PubSub