1
0
mirror of https://github.com/astaxie/beego.git synced 2024-11-25 13:10:55 +00:00

isExist func will check if the value is expired

This commit is contained in:
JessonChan 2016-01-07 09:36:23 +08:00
parent 6465dbd703
commit 8aed4c13d7

12
cache/memory.go vendored
View File

@ -82,14 +82,14 @@ func (bc *MemoryCache) GetMulti(names []string) []interface{} {
}
// Put cache to memory.
// if expired is 0, it will be cleaned by next gc operation ( default gc clock is 1 minute).
func (bc *MemoryCache) Put(name string, value interface{}, expired int64) error {
// if lifespan is 0, it will be forever till restart.
func (bc *MemoryCache) Put(name string, value interface{}, lifespan int64) error {
bc.Lock()
defer bc.Unlock()
bc.items[name] = &MemoryItem{
val: value,
cratedTime: time.Now(),
lifespan: expired,
lifespan: lifespan,
}
return nil
}
@ -179,8 +179,10 @@ func (bc *MemoryCache) Decr(key string) error {
func (bc *MemoryCache) IsExist(name string) bool {
bc.RLock()
defer bc.RUnlock()
_, ok := bc.items[name]
return ok
if v, ok := bc.items[name]; ok {
return !v.isExpire()
}
return false
}
// ClearAll will delete all cache in memory.