本文整理汇总了Golang中github.com/prataprc/golib/llrb.MemStore.Get方法的典型用法代码示例。如果您正苦于以下问题:Golang MemStore.Get方法的具体用法?Golang MemStore.Get怎么用?Golang MemStore.Get使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/prataprc/golib/llrb.MemStore
的用法示例。
在下文中一共展示了MemStore.Get方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: validate
func validate(
d *llrb.Dict,
rb llrb.MemStore, cmd []interface{}, stats map[string]int) map[string]int {
var ref, val interface{}
name := cmd[0].(string)
switch name {
case "get":
ref = d.Get(&llrb.KeyInt{int64(cmd[1].(float64)), -1})
val = rb.Get(&llrb.KeyInt{int64(cmd[1].(float64)), -1})
case "min":
ref = d.Min()
val = rb.Min()
case "max":
ref = d.Max()
val = rb.Max()
case "delmin":
ref = d.DeleteMin()
val = rb.DeleteMin()
case "delmax":
ref = d.DeleteMax()
val = rb.DeleteMax()
case "upsert":
now := time.Now().UnixNano()
k := &llrb.KeyInt{int64(cmd[1].(float64)), now}
ref = d.Upsert(k)
val = rb.Upsert(k)
case "insert":
now := time.Now().UnixNano()
k := &llrb.KeyInt{int64(cmd[1].(float64)), now}
if rb.Get(k) == nil {
d.Insert(k)
rb.Insert(k)
} else {
cmd[0] = "upsert"
ref = d.Upsert(k)
val = rb.Upsert(k)
}
case "delete":
ref = d.Delete(&llrb.KeyInt{int64(cmd[1].(float64)), -1})
val = rb.Delete(&llrb.KeyInt{int64(cmd[1].(float64)), -1})
default:
log.Fatalf("unknown command %v\n", cmd)
return stats
}
if reflect.DeepEqual(ref, val) == false {
log.Fatalf("expected %v got %v\n", ref, val)
}
stats = compute_stats(cmd, stats)
return stats
}
示例2: benchGet
func benchGet(s llrb.MemStore) {
for _, key := range getInts {
s.Get(key)
}
}