HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UT_ThreadSafeCache< Lock > Class Template Reference

#include <UT_ThreadSafeCache.h>

Classes

struct  StatItem
 
class  unsafe_traverser
 
class  UT_CacheItem
 

Public Member Functions

 UT_ThreadSafeCache (bool destroy=true)
 
 ~UT_ThreadSafeCache ()
 
void setMaxMemory (int64 size_mb, bool prune=false)
 
void setMaxMemoryBytes (int64 size_bytes, bool prune=false)
 
int64 getMaxMemoryBytes () const
 
int64 getMemoryUsage () const
 
int64 entries () const
 
void setUserData (void *data)
 
void setCheckMemoryLimit (bool check)
 
bool getCheckMemoryLimit () const
 
void access (UT_CacheItem *item, void *parms=0)
 
void release (UT_CacheItem *item)
 
void releaseAndDeallocate (UT_CacheItem *item)
 
void freeItem (UT_CacheItem *item)
 
void freeAllItems ()
 
void pruneItems (int64 memory_limit)
 
void getStats (int64 &mem_used, int64 &mem_limit, UT_Array< StatItem > &breakdown) const
 
void dumpStats (const char *name) const
 
unsafe_traverser unsafe_begin () const
 
unsafe_traverser unsafe_end () const
 

Detailed Description

template<class Lock>
class UT_ThreadSafeCache< Lock >

Definition at line 30 of file UT_ThreadSafeCache.h.

Constructor & Destructor Documentation

template<class Lock>
UT_ThreadSafeCache< Lock >::UT_ThreadSafeCache ( bool  destroy = true)
template<class Lock>
UT_ThreadSafeCache< Lock >::~UT_ThreadSafeCache ( )

Member Function Documentation

template<class Lock>
void UT_ThreadSafeCache< Lock >::access ( UT_CacheItem item,
void parms = 0 
)
inline

Definition at line 167 of file UT_ThreadSafeCache.h.

template<class Lock>
void UT_ThreadSafeCache< Lock >::dumpStats ( const char *  name) const
template<class Lock>
int64 UT_ThreadSafeCache< Lock >::entries ( ) const
inline

Definition at line 151 of file UT_ThreadSafeCache.h.

template<class Lock>
void UT_ThreadSafeCache< Lock >::freeAllItems ( )
template<class Lock>
void UT_ThreadSafeCache< Lock >::freeItem ( UT_CacheItem item)
template<class Lock>
bool UT_ThreadSafeCache< Lock >::getCheckMemoryLimit ( ) const
inline

Definition at line 160 of file UT_ThreadSafeCache.h.

template<class Lock>
int64 UT_ThreadSafeCache< Lock >::getMaxMemoryBytes ( ) const
inline

Definition at line 143 of file UT_ThreadSafeCache.h.

template<class Lock>
int64 UT_ThreadSafeCache< Lock >::getMemoryUsage ( ) const
inline

Definition at line 148 of file UT_ThreadSafeCache.h.

template<class Lock>
void UT_ThreadSafeCache< Lock >::getStats ( int64 mem_used,
int64 mem_limit,
UT_Array< StatItem > &  breakdown 
) const
template<class Lock>
void UT_ThreadSafeCache< Lock >::pruneItems ( int64  memory_limit)
template<class Lock>
void UT_ThreadSafeCache< Lock >::release ( UT_CacheItem item)
inline

Definition at line 199 of file UT_ThreadSafeCache.h.

template<class Lock>
void UT_ThreadSafeCache< Lock >::releaseAndDeallocate ( UT_CacheItem item)
inline

Definition at line 207 of file UT_ThreadSafeCache.h.

template<class Lock>
void UT_ThreadSafeCache< Lock >::setCheckMemoryLimit ( bool  check)
inline

Definition at line 158 of file UT_ThreadSafeCache.h.

template<class Lock>
void UT_ThreadSafeCache< Lock >::setMaxMemory ( int64  size_mb,
bool  prune = false 
)
template<class Lock>
void UT_ThreadSafeCache< Lock >::setMaxMemoryBytes ( int64  size_bytes,
bool  prune = false 
)
template<class Lock>
void UT_ThreadSafeCache< Lock >::setUserData ( void data)
inline

Definition at line 154 of file UT_ThreadSafeCache.h.

template<class Lock>
unsafe_traverser UT_ThreadSafeCache< Lock >::unsafe_begin ( ) const
inline

Definition at line 284 of file UT_ThreadSafeCache.h.

template<class Lock>
unsafe_traverser UT_ThreadSafeCache< Lock >::unsafe_end ( ) const
inline

Definition at line 286 of file UT_ThreadSafeCache.h.


The documentation for this class was generated from the following file: