Documentation
¶
Index ¶
- Variables
- type CloseListenerFunc
- type PubSubManager
- func (psm *PubSubManager) AddChannel(channelid string)
- func (psm *PubSubManager) ChannelInUse(channelid string) bool
- func (psm *PubSubManager) Channels() []string
- func (psm *PubSubManager) CloseChannel(channelid string)
- func (psm *PubSubManager) CloseNotify(channelid string) (ch <-chan struct{}, ok bool)
- func (psm *PubSubManager) Publish(msg interface{})
- func (psm *PubSubManager) PublishWithoutDefault(msg interface{})
- func (psm *PubSubManager) RegistListener(channelid string, size int) (<-chan interface{}, <-chan struct{}, CloseListenerFunc, error)
- func (psm *PubSubManager) Send(msg interface{}, channels ...string)
- func (psm *PubSubManager) SendWithDefault(msg interface{}, channels ...string)
Constants ¶
This section is empty.
Variables ¶
var PubSub = NewPubSubManager()
Functions ¶
This section is empty.
Types ¶
type CloseListenerFunc ¶
type CloseListenerFunc func()
type PubSubManager ¶
type PubSubManager struct {
// contains filtered or unexported fields
}
PubSubManager 广播器
func (*PubSubManager) AddChannel ¶
func (psm *PubSubManager) AddChannel(channelid string)
AddChannel 将频道注册到系统中允许监听
func (*PubSubManager) ChannelInUse ¶
func (psm *PubSubManager) ChannelInUse(channelid string) bool
ChannelInUse 检测channeldid是否在被使用
func (*PubSubManager) Channels ¶
func (psm *PubSubManager) Channels() []string
Channels 查看现在被注册的频道有哪些
func (*PubSubManager) CloseChannel ¶
func (psm *PubSubManager) CloseChannel(channelid string)
CloseChannel 关闭频道操作.会将频道id先去除不再允许注册监听器,然后将频道id下的所有监听器去除
func (*PubSubManager) CloseNotify ¶
func (psm *PubSubManager) CloseNotify(channelid string) (ch <-chan struct{}, ok bool)
CloseNotify 关闭指定频道的信号提醒 @params channelid string 频道id @returns <-chan struct{} 关闭频道所有监听器的信号channel @returns bool 当前频道是否可用
func (*PubSubManager) Publish ¶
func (psm *PubSubManager) Publish(msg interface{})
Publish 全频道广播消息 @params msg interface{} 广播的消息
func (*PubSubManager) PublishWithoutDefault ¶ added in v0.0.2
func (psm *PubSubManager) PublishWithoutDefault(msg interface{})
PublishWithoutDefault 除了default这个channel外全频道广播 @params msg interface{} 广播的消息
func (*PubSubManager) RegistListener ¶
func (psm *PubSubManager) RegistListener(channelid string, size int) (<-chan interface{}, <-chan struct{}, CloseListenerFunc, error)
RegistListener 注册频道的监听器 @params channelid string 频道id @params size int 构造的消息channel的缓冲区大小,<=0时使用无缓冲channel @returns <-chan interface{} 消息channel @returns <-chan struct{} 关闭监听器的信号channel @returns CloseListenerFunc 关闭当前注册监听器的函数 @returns error 当频道未被注册可以使用时会报错
func (*PubSubManager) Send ¶ added in v0.0.2
func (psm *PubSubManager) Send(msg interface{}, channels ...string)
Send 指定频道发送消息 @params msg interface{} 发送的消息 @params channels ...string 发送去的频道
func (*PubSubManager) SendWithDefault ¶ added in v0.0.2
func (psm *PubSubManager) SendWithDefault(msg interface{}, channels ...string)
SendWithDefault 指定频道发送消息,消息一并发送到default这个channel上 @params msg interface{} 发送的消息 @params channels ...string 发送去的频道