github.com/songzhibin97/gkit@v1.2.13/cache/local_cache/Iterator.go (about)

     1  package local_cache
     2  
     3  import "time"
     4  
     5  // Iterator cache存储的实际成员
     6  type Iterator struct {
     7  	// Val 实际存储的对象
     8  	Val interface{}
     9  
    10  	// Expire 过期时间
    11  	// 0 不设置过期时间
    12  	Expire int64
    13  }
    14  
    15  // Expired 判断是否过期,过期返回 true
    16  func (i Iterator) Expired(v ...int64) bool {
    17  	if i.Expire == 0 {
    18  		return false
    19  	}
    20  	if len(v) != 0 {
    21  		return v[0] > i.Expire
    22  	}
    23  	return time.Now().UnixNano() > i.Expire
    24  }
    25  
    26  type kv struct {
    27  	key   string
    28  	value interface{}
    29  }