1:实体继承Delayed接口,覆盖其compareTo方法
2: 创建取消时间字段,这个时间就是队列中你这条数据何时取消的时间
private Date cancelTime;
3:覆盖其compareTo方法
4:在操作的时候定义好取消时间,保存;
例如某条数据,我需要在一小时后执行某操作,需要在这条数据创建或者修改的时候,把它放到队列中,并赋予取消时间。
这里是我项目中的用法:先定义,再往队列中放
这里就是把取消时间放进实体对象中去
5:放进队列中之后,接下来就需要拿了。有个take方法;这里当容器启动跑一个线程,只要队列中那个cancelTime时间到了,就会执行
6:如果看的不太懂或者不清楚,这里提供了个demo跑一下,链接地址:
https://www.freesion.com/article/291033335/
相关文章: