github.com/cockroachdb/pebble@v0.0.0-20231214172447-ab4952c5f87b/cache.go (about) 1 // Copyright 2019 The LevelDB-Go and Pebble Authors. All rights reserved. Use 2 // of this source code is governed by a BSD-style license that can be found in 3 // the LICENSE file. 4 5 package pebble 6 7 import "github.com/cockroachdb/pebble/internal/cache" 8 9 // Cache exports the cache.Cache type. 10 type Cache = cache.Cache 11 12 // NewCache creates a new cache of the specified size. Memory for the cache is 13 // allocated on demand, not during initialization. The cache is created with a 14 // reference count of 1. Each DB it is associated with adds a reference, so the 15 // creator of the cache should usually release their reference after the DB is 16 // created. 17 // 18 // c := pebble.NewCache(...) 19 // defer c.Unref() 20 // d, err := pebble.Open(pebble.Options{Cache: c}) 21 func NewCache(size int64) *cache.Cache { 22 return cache.New(size) 23 }