package cache import "time" type NilSetFn func() ([]byte, error) type Event func(event *redisEvent) type redisEvent struct { NilSetLimit time.Duration // 为nil的过期时间自定义 NilSet NilSetFn } func WithEventNilSetLimit(expired time.Duration) Event { return func(event *redisEvent) { event.NilSetLimit = expired } } func WithNilSet(fn NilSetFn) Event { return func(event *redisEvent) { event.NilSet = fn } }