Go to the documentation of this file.
41 bool AddItem(
void *newdata,
void *olddata,
const char *key,
42 int hash,
bool replace=
false);
44 bool Attach(
int tout,
bool isrw=
false);
50 bool DelItem(
void *data,
const char *key,
int hash);
54 bool Enumerate(
void *&jar,
char *&key,
void *&val);
58 bool GetItem(
void *data,
const char *key,
int hash);
60 int Info(
const char *vname,
char *buff=0,
int blen=0);
65 bool Sync(
bool dosync,
bool syncdo);
66 bool Sync(
int syncqsz);
71 pthread_mutex_destroy(&
lkMutex);
72 pthread_rwlock_destroy(&
myMutex);
84 bool Lock(
bool doRW=
false,
bool nowait=
false);
93 void Updated(
int mOff,
int mLen);
LockType
Definition: XrdSsiShMam.hh:75
Definition: XrdSsiShMat.hh:99
int Find(MemItem *&theItem, MemItem *&prvItem, const char *key, int &hash)
bool AddItem(void *newdata, void *olddata, const char *key, int hash, bool replace=false)
Definition: XrdSsiShMat.hh:276
void SwapMap(XrdSsiShMam &newMap)
long long shmSize
Definition: XrdSsiShMam.hh:126
~XLockHelper()
Definition: XrdSsiShMam.hh:108
bool syncOn
Definition: XrdSsiShMam.hh:150
LockType lkType
Definition: XrdSsiShMam.hh:118
int lkCount
Definition: XrdSsiShMam.hh:137
XLockHelper(XrdSsiShMam *shmemp, LockType lktype)
Definition: XrdSsiShMam.hh:102
Definition: XrdSsiShMam.hh:78
bool Lock(bool doRW=false, bool nowait=false)
char * shmTemp
Definition: XrdSsiShMam.hh:125
int shmFD
Definition: XrdSsiShMam.hh:135
int keyPos
Definition: XrdSsiShMam.hh:133
pthread_mutex_t lkMutex
Definition: XrdSsiShMam.hh:122
int maxKLen
Definition: XrdSsiShMam.hh:134
void Detach()
Detach the map from the shared memory.
int shmSlots
Definition: XrdSsiShMam.hh:129
int syncLast
Definition: XrdSsiShMam.hh:140
bool lockRW
Definition: XrdSsiShMam.hh:145
int shmInfoSz
Definition: XrdSsiShMam.hh:131
bool ReMap(LockType iHave)
bool doUnLock
Definition: XrdSsiShMam.hh:119
bool GetItem(void *data, const char *key, int hash)
bool DelItem(void *data, const char *key, int hash)
char * shmBase
Definition: XrdSsiShMam.hh:127
XrdSsiShMam(XrdSsiShMat::NewParms &parms)
bool syncBase
Definition: XrdSsiShMam.hh:149
int verNum
Definition: XrdSsiShMam.hh:132
int syncQSZ
Definition: XrdSsiShMam.hh:141
Definition: XrdSsiShMam.hh:37
int syncOpt
Definition: XrdSsiShMam.hh:138
int accMode
Definition: XrdSsiShMam.hh:142
Definition: XrdSsiShMam.hh:95
int timeOut
Definition: XrdSsiShMam.hh:136
int syncQWR
Definition: XrdSsiShMam.hh:139
bool reUse
Definition: XrdSsiShMam.hh:146
bool Attach(int tout, bool isrw=false)
bool isRW
Definition: XrdSsiShMam.hh:143
bool Create(XrdSsiShMat::CRZParms &parms)
bool FLock()
Definition: XrdSsiShMam.hh:98
Definition: XrdSsiShMat.hh:41
bool useAtomic
Definition: XrdSsiShMam.hh:148
XrdSsiShMam * shmemP
Definition: XrdSsiShMam.hh:117
bool Resize(XrdSsiShMat::CRZParms &parms)
void RetItem(MemItem *iP)
Definition: XrdSsiShMam.hh:75
void SetLocking(bool isrw)
bool multW
Definition: XrdSsiShMam.hh:147
int shmItemSz
Definition: XrdSsiShMam.hh:130
int hash
Definition: XrdSsiShMam.hh:78
int Info(const char *vname, char *buff=0, int blen=0)
pthread_rwlock_t myMutex
Definition: XrdSsiShMam.hh:123
bool lockRO
Definition: XrdSsiShMam.hh:144
bool Enumerate(void *&jar, char *&key, void *&val)
~XrdSsiShMam()
Definition: XrdSsiShMam.hh:70
bool ExportIt(bool fLocked)
int HashVal(const char *key)
Definition: XrdSsiShMam.hh:75