本文整理匯總了Golang中github.com/mission-liao/dingo.Meta.ID方法的典型用法代碼示例。如果您正苦於以下問題:Golang Meta.ID方法的具體用法?Golang Meta.ID怎麽用?Golang Meta.ID使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/mission-liao/dingo.Meta
的用法示例。
在下文中一共展示了Meta.ID方法的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: Done
func (me *backend) Done(meta dingo.Meta) (err error) {
var v int
err = func() (err error) {
var (
ok bool
ids map[string]int
)
me.ridsLock.Lock()
defer me.ridsLock.Unlock()
if ids, ok = me.rids[meta.Name()]; ok {
v, ok = ids[meta.ID()]
delete(ids, meta.ID())
}
if !ok {
err = errors.New("store id not found")
return
}
return
}()
if err == nil {
err = me.stores.Stop(v)
}
return
}
示例2: Poll
func (me *backend) Poll(meta dingo.Meta) (reports <-chan []byte, err error) {
quit, done, idx := me.stores.New(0)
me.ridsLock.Lock()
defer me.ridsLock.Unlock()
if v, ok := me.rids[meta.Name()]; ok {
v[meta.ID()] = idx
} else {
me.rids[meta.Name()] = map[string]int{meta.ID(): idx}
}
r := make(chan []byte, 10)
reports = r
go me._store_routine_(quit, done, me.stores.Events(), r, meta)
return
}
示例3: getConsumerTag
func getConsumerTag(meta dingo.Meta) string {
return fmt.Sprintf("dingo.consumer.%s.%s", meta.Name(), meta.ID())
}
示例4: getRoutingKey
func getRoutingKey(meta dingo.Meta) string {
return fmt.Sprintf("dingo.rkey.%s.%s", meta.Name(), meta.ID())
}
示例5: getQueueName
func getQueueName(meta dingo.Meta) string {
return fmt.Sprintf("dingo.q.%s.%s", meta.Name(), meta.ID())
}