OSDN Git Service

Hulk did something
[bytom/vapor.git] / vendor / github.com / syndtr / goleveldb / leveldb / cache / bench_test.go
1 // Copyright (c) 2012, Suryandaru Triandana <syndtr@gmail.com>
2 // All rights reserved.
3 //
4 // Use of this source code is governed by a BSD-style license that can be
5 // found in the LICENSE file.
6
7 package cache
8
9 import (
10         "math/rand"
11         "testing"
12         "time"
13 )
14
15 func BenchmarkLRUCache(b *testing.B) {
16         c := NewCache(NewLRU(10000))
17
18         b.SetParallelism(10)
19         b.RunParallel(func(pb *testing.PB) {
20                 r := rand.New(rand.NewSource(time.Now().UnixNano()))
21
22                 for pb.Next() {
23                         key := uint64(r.Intn(1000000))
24                         c.Get(0, key, func() (int, Value) {
25                                 return 1, key
26                         }).Release()
27                 }
28         })
29 }