java Map定时过期类
来源:互联网 发布:php面试题大全 编辑:程序博客网 时间:2024/06/14 00:05
package com.ltx.system.util;import java.util.Date;import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Map.Entry;import java.util.Timer;import java.util.TimerTask;public class JTime {private static Map<String,Object> timekey = new HashMap<String,Object>();//time主属性 用于存放 需要保存的字段private static Map<String,Long> keytime = new HashMap<String,Long>();//time主属性 用于存放 需要保存的字段//private static final long EXPIRATIONTIME=1000*60*90;//1个半小时private static final long EXPIRATIONTIME=1000*20;//测试用20秒private static final int START=0;//设置执行开始时间private static final int INTERVAL=10000;//设置间隔执行时间 单位/毫秒public static void put(String key,Object vale){timekey.put(key, vale);keytime.put(key, new Date().getTime());}public static Object get(String key){return timekey.get(key);}static{Timer tt=new Timer();//定时类tt.schedule(new TimerTask(){//创建一个定时任务 @Override public void run() {long nd = new Date().getTime();//获取系统时间Iterator<Entry<String, Long>> entries = keytime.entrySet().iterator(); while (entries.hasNext()) { Map.Entry<String,Object> entry = (Map.Entry) entries.next(); String key = (String)entry.getKey(); //获取key long value = (Long)entry.getValue(); //获取valuelong rt = nd - value;//获取当前时间跟存入时间的差值if(rt>EXPIRATIONTIME){//判断时间是否已经过期 如果过期则清楚key 否则不做处理 timekey.put(key, null); entries.remove(); System.out.println("Key:"+key+" 已过期 清空"); }}} }, START,INTERVAL);//从0秒开始,每隔10秒执行一次}}
直接调用 put 存值 get 取值 简单方便
0 0
- java Map定时过期类
- 定时删除过期备份文件
- Linux定时删除过期文件
- Linux定时删除过期文件
- linux 定时删除过期文件夹
- 带过期功能的map
- shell定时清除过期日志文件
- python 定时清理django 过期 session
- 定时清理过期的topic和queue
- mysql定时删除过期数据记录
- ActiveMQ定时删除过期Topic和Queue
- 定时清除Map
- java标记过期方法
- TimeOutHelper.java 定时常用类
- java中Map类
- java中Map类
- java中Map类
- java中Map类
- 哈希表+双向链表的组合使用
- 使用SQLCipher对数据库加密
- 双路选择: if-else 语句
- Mac上的抓包工具Charles
- 稳压
- java Map定时过期类
- H3C的路由器配置命令详解
- 如何发外链才能让百度收录和提高排名?
- Manifest.xml-<supports-screens
- Oracle删除用户及表空间
- error while loading shared libraries问题解决
- Hibernate工作原理及为什么要用?
- Rails教程
- 如何将你的github仓库部署到github pages