为了实现每日清除、每周数据清除逻辑,游戏一般有一个倒计时的逻辑,这个逻辑会产生的问题是:
- 倒计时结束的时候,是[23:59:59,0:0:1]之间的数值;
- 如果是在前一天结束,则数据逻辑中,如果涉及到根据日期判定的逻辑,就可能会出错,比如根据当前日期变更进行签到、月卡等;
- 如果是在后一天结束,则在[0:0:0,结束时间]这段时间下线的玩家,数据就会得不到清除;
解决方式:
- 现在采用的方式是,在数据进行清除的时候,设置一个清除日期,根据日期进行判定,这个昨天是否没有被更新数据
- 还是使用倒计时的方式,倒计时的方式,将时间往后推迟1秒,这样,结束的时候,肯定已经是第二天了