CernVM-FS
2.12.0
|
#include <lru_md.h>
Public Member Functions | |
InodeCache (unsigned int cache_size, perf::Statistics *statistics) | |
bool | Insert (const fuse_ino_t &inode, const catalog::DirectoryEntry &dirent) |
bool | Lookup (const fuse_ino_t &inode, catalog::DirectoryEntry *dirent, bool update_lru=true) |
void | Drop () |
Public Member Functions inherited from lru::LruCache< fuse_ino_t, catalog::DirectoryEntry > | |
LruCache (const unsigned cache_size, const fuse_ino_t &empty_key, uint32_t(*hasher)(const fuse_ino_t &key), perf::StatisticsTemplate statistics) | |
virtual | ~LruCache () |
virtual void | Update (const fuse_ino_t &key) |
virtual bool | UpdateValue (const fuse_ino_t &key, const catalog::DirectoryEntry &value) |
virtual bool | Forget (const fuse_ino_t &key) |
void | Pause () |
void | Resume () |
bool | IsFull () const |
bool | IsEmpty () const |
Counters | counters () |
virtual void | FilterBegin () |
virtual void | FilterGet (fuse_ino_t *key, catalog::DirectoryEntry *value) |
virtual bool | FilterNext () |
virtual void | FilterDelete () |
virtual void | FilterEnd () |
Additional Inherited Members | |
Static Public Member Functions inherited from lru::LruCache< fuse_ino_t, catalog::DirectoryEntry > | |
static double | GetEntrySize () |
Protected Attributes inherited from lru::LruCache< fuse_ino_t, catalog::DirectoryEntry > | |
Counters | counters_ |
|
inlineexplicit |
|
inlinevirtual |
Clears all elements from the cache. All memory of internal data structures will be freed but data of cache entries may stay in use, we do not call delete on any user data.
Reimplemented from lru::LruCache< fuse_ino_t, catalog::DirectoryEntry >.
Definition at line 69 of file lru_md.h.
Referenced by TalkManager::MainResponder(), and FuseRemounter::TryFinish().
|
inlinevirtual |
Insert a new key-value pair to the list. If the cache is already full, the least recently used object is removed; afterwards the new object is inserted. If the object is already present it is updated and moved back to the end of the list
key | the key where the value is saved |
value | the value of the cache entry |
Reimplemented from lru::LruCache< fuse_ino_t, catalog::DirectoryEntry >.
Definition at line 51 of file lru_md.h.
Referenced by cvmfs::GetDirentForInode().
|
inlinevirtual |
Retrieve an element from the cache. If the element was found, it will be marked as 'recently used' and returned
key | the key to perform a lookup on |
value | (out) here the result is saved (not touch in case of miss) |
Reimplemented from lru::LruCache< fuse_ino_t, catalog::DirectoryEntry >.
Definition at line 59 of file lru_md.h.
Referenced by cvmfs::GetDirentForInode().