redis的key可以设置过期时间,那么这个key的过期时间是什么方式实现的。或者可以换一种说法,Map的key如何设置一个过期时间。
后台的线程处理
这个首先把这个key设置一个值,然后后台总是有一个线程在监视着这些值,当时间一当不满足了就会把该key淘汰掉
redis会自动记录每个key的创建时间,与有效时间比较一下就知道是否过期了。
君不知有一种东西叫定时器?
我的思路:key可以设计成一个map结构,key是key,value值是时间的串,当判断是否过期的时候就去比较当前时间和串的时间的减法,当小于0的时候证明key过期了,进行remove