Aggiunto il metodo zap alle cache RW
Aggiunto i costruttori basati su file* per le cache generiche e delle statistiche git-svn-id: svn://10.65.10.50/trunk@5359 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
4a0695a363
commit
466c5c81c8
@ -729,6 +729,14 @@ THash_object * TRWrecord_cache::get_some_obj()
|
|||||||
return o;
|
return o;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TRWrecord_cache::TRWrecord_cache(TLocalisamfile *f, int key, bool lock)
|
||||||
|
:TRecord_cache(f,key)
|
||||||
|
{
|
||||||
|
if (lock)
|
||||||
|
file().lock();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
TRWrecord_cache::TRWrecord_cache(int num, int key, bool lock)
|
TRWrecord_cache::TRWrecord_cache(int num, int key, bool lock)
|
||||||
:TRecord_cache(num,key)
|
:TRecord_cache(num,key)
|
||||||
{
|
{
|
||||||
@ -736,6 +744,7 @@ TRWrecord_cache::TRWrecord_cache(int num, int key, bool lock)
|
|||||||
file().lock();
|
file().lock();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
TRWrecord_cache::~TRWrecord_cache()
|
TRWrecord_cache::~TRWrecord_cache()
|
||||||
{
|
{
|
||||||
flush();
|
flush();
|
||||||
@ -757,7 +766,21 @@ const TString & TStat_cache::getkey2discard()
|
|||||||
return o->key();
|
return o->key();
|
||||||
}
|
}
|
||||||
|
|
||||||
TStat_cache ::TStat_cache (bool lock):
|
TStat_cache::TStat_cache (TLocalisamfile *f, bool lock):
|
||||||
TRWrecord_cache( LF_SVSTAT,1,lock)
|
TRWrecord_cache( f,1,lock)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// azzera la cache e distrugge il file!
|
||||||
|
void TStat_cache::zap()
|
||||||
|
{
|
||||||
|
clear();
|
||||||
|
|
||||||
|
int err=NOERR;
|
||||||
|
while (err==NOERR)
|
||||||
|
{
|
||||||
|
err=file().first();
|
||||||
|
if (err==NOERR)
|
||||||
|
err=file().remove();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -125,6 +125,7 @@ public:
|
|||||||
void clear();
|
void clear();
|
||||||
void flush();
|
void flush();
|
||||||
|
|
||||||
|
TRWrecord_cache(TLocalisamfile *f, int key = 1, bool lock=FALSE);
|
||||||
TRWrecord_cache(int num, int key = 1, bool lock=FALSE);
|
TRWrecord_cache(int num, int key = 1, bool lock=FALSE);
|
||||||
TRWrecord_cache(const char* table, int key = 1, bool lock=FALSE);
|
TRWrecord_cache(const char* table, int key = 1, bool lock=FALSE);
|
||||||
virtual ~TRWrecord_cache() ;
|
virtual ~TRWrecord_cache() ;
|
||||||
@ -135,9 +136,11 @@ class TStat_cache : public TRWrecord_cache
|
|||||||
protected:
|
protected:
|
||||||
virtual const TString & getkey2discard();
|
virtual const TString & getkey2discard();
|
||||||
public:
|
public:
|
||||||
TStat_cache (bool lock=FALSE);
|
TStat_cache (TLocalisamfile &f, bool lock=FALSE);
|
||||||
|
TStat_cache (TLocalisamfile *f, bool lock=FALSE);
|
||||||
virtual ~TStat_cache()
|
virtual ~TStat_cache()
|
||||||
{}
|
{}
|
||||||
|
void zap();
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user