package zhub import "time" // 全局便捷方法 func Publish(topic, message string) error { return GetClient().Publish(topic, message) } func Broadcast(topic, message string) error { return GetClient().Broadcast(topic, message) } func Delay(topic, message string, delay int) error { return GetClient().Delay(topic, message, delay) } func Subscribe(topic string, callback func(string)) { GetClient().Subscribe(topic, callback) } func Unsubscribe(topic string) { GetClient().Unsubscribe(topic) } func Timer(topic string, callback func()) { GetClient().Timer(topic, callback) } func CallRpc(topic string, message interface{}, callback func(RpcResult)) { GetClient().Rpc(topic, message, callback) } func RpcWithTimeout(topic string, message interface{}, timeout time.Duration, callback func(RpcResult)) { GetClient().RpcWithTimeout(topic, message, timeout, callback) } func RpcSubscribe(topic string, handler func(Rpc) RpcResult) { GetClient().RpcSubscribe(topic, handler) } func AcquireLock(key string, duration int) Lock { return GetClient().Lock(key, duration) } func ReleaseLock(lock Lock) { GetClient().Unlock(lock) } func Cmd(cmd ...string) { GetClient().Cmd(cmd...) } func Close() { if defaultClient != nil { defaultClient.Close() } }