亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? cache.java

?? java web 開發(fā),Java Xml 編程指南書籍源碼
?? JAVA
字號:
package MyNa.utils;

/* the Cache class is a framework for defining caching, or
  'memoizing', Singleton classes; each needs to define the
  static getInstance, freeInstance, and close methods. 
  Suggested overrides are included below, using static
  variables "instance" which holds the singleton, and
  "clients" which holds a count of instance's users.

  We would define Cache as an abstract class with those
  three abstract methods, except that abstract methods
  can't be static (or synchronized). Remember to override them.  
*/

import java.util.*;
public class Cache { 

public static synchronized Cache getInstance(){return null;}
public static synchronized int freeInstance(){return 0;}
public static synchronized boolean close()throws Exception{return false;}


Logger lg;
protected Cachetable cache=null;    
  // the cache for answers; this is the only actual instance variable


protected Cache(){init();}     // constructor only called internally

protected void init(){
   cache=new Cachetable();
   lg=new Logger();
} // set up cache; can register with a CacheRegistry here.

/*
  The static variables ( instance and clients) and static methods
  getInstance,freeInstance,and close must be overridden; 
  they refer to the static variables. The overrides are normally
  trivial (just use the commented-out code below) but needed: we want
  one instance of each Cache subclass, not one instance of Cache.
  The freeItem(Object ob) method can be overridden to do anything
  ob needs before tossing it out of the cache, but need not be.
 */

/* the following static vars & methods can  be copied into a subclass */
/* ****************SUGGESTED OVERRIDE BLOCK*********************** */ /*
private static Cache instance=null; // the one and only class instance
private static int clients=0;       // how many are asking us?
   
public static synchronized Cache getInstance(){
  if(null==instance)instance=new Cache(); // "Cache" -> subclass name
  clients++;
  return instance;
}

public static synchronized int freeInstance(){ 
  if(null==instance)return 0;
  clients--;
  if(clients==0)close(); // all gone, and the cache with it.
  return clients;
}

public static synchronized boolean close()throws Exception{ 
  clients=0;instance=null; return true;
   // might want to close up objects here, using instance.freeSpace
   // and overriding freeItem to be called by it.
}
 
*/ /* ************ END SUGGESTED OVERRIDE BLOCK*********************** */

public boolean freeItem(Object ob){
  return true;
  // called by freeSpace; override if you need to do anything here.
}

public int freeSpace(int numToFree){
  return cache.freeSpace(numToFree);
}

public Object get(Object k){
return cache.get(k);
}
public Object get(Object k1,Object k2){
  return cache.get(k1,k2);
}
public Object get(Object k1,Object k2,Object k3){
  return cache.get(k1,k2,k3);
}

public Object put(Object k,Object v){
   cache.put(k,v);
   return v;
}

public Object put(Object k1,Object k2,Object v){
  cache.put(k1,k2,v);
  return v;
}

public Object put(Object k1,Object k2,Object k3,Object v){
  cache.put(k1,k2,k3,v);
  return v;
}

class Cachetable extends Hashtable {
  
public Cachetable(){}

public synchronized Object put(Object k,Object v){
  if(null==k)k="";
  return super.put(k,v);
}

public synchronized void put(Object k,Object k2,Object v){
  Cachetable subCache=(Cachetable)get(k);
  if(null==subCache)put(k,subCache=new Cachetable());
  subCache.put(k2,v);
}

public synchronized void put(Object k,Object k2,Object k3,Object v){
  Cachetable subCache=(Cachetable)get(k);
  if(null==subCache)put(k,subCache=new Cachetable());
  subCache.put(k2,k3,v);
}

public synchronized Object get(Object k){
  return super.get(null==k?"":k);
}

public synchronized Object get(Object k,Object k2){
  Cachetable subCache=(Cachetable)get(k);
  if(null==subCache)return null;
  return subCache.get(k2);
}
public synchronized Object get(Object k,Object k2,Object k3){
  Cachetable subCache=(Cachetable)get(k);
  if(null==subCache)return null;
  return subCache.get(k2,k3);
}

public synchronized int freeSpace(int numToFree){ // returns leftover.
  Enumeration enum=keys();
  while(enum.hasMoreElements() && numToFree>0){
    Object k=enum.nextElement();
    Object v=get(k);
    if(v instanceof Cachetable){
       Cachetable sub=(Cachetable)v;
       numToFree=sub.freeSpace(numToFree);
       if(numToFree>0)remove(k); // didn't free enough, must be empty.
    }else {
      freeItem(v);
      remove(k);
      numToFree--;
    }
  }
  return numToFree; // this many still not freed.
}  

}  // end of Cachetable inner class

}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美浪妇xxxx高跟鞋交| 久久精品视频在线免费观看| 粗大黑人巨茎大战欧美成人| 日韩av不卡一区二区| 一区二区三区蜜桃| 亚洲国产乱码最新视频| 一区二区三区在线视频免费观看| 一区二区三区91| 亚洲高清久久久| 天堂一区二区在线| 免费欧美在线视频| 韩国成人福利片在线播放| 男女激情视频一区| 国产一区二区视频在线播放| 国产麻豆精品视频| a亚洲天堂av| 欧美日韩在线精品一区二区三区激情 | 国产精品天天看| 欧美韩国日本一区| 亚洲免费观看在线视频| 无码av免费一区二区三区试看 | 亚洲蜜桃精久久久久久久| 亚洲已满18点击进入久久| 亚洲成a人在线观看| 亚洲gay无套男同| 精品综合久久久久久8888| 国产精品一区二区久久不卡| 99综合影院在线| 欧美日韩一区在线| 国产日本一区二区| 亚洲国产你懂的| 国产一区二区不卡| 日本韩国欧美一区| 精品日韩一区二区三区免费视频| 欧美日韩精品一区二区三区四区| 最新久久zyz资源站| 欧美特级限制片免费在线观看| 欧美色图激情小说| 精品久久久久久综合日本欧美| 国产欧美一区在线| 天天色天天爱天天射综合| 韩国一区二区三区| 欧美在线观看你懂的| 久久老女人爱爱| 亚洲愉拍自拍另类高清精品| 久草在线在线精品观看| 91蝌蚪porny成人天涯| 精品日韩一区二区三区 | 99re热这里只有精品视频| 欧美色综合天天久久综合精品| 亚洲精品一区二区三区精华液 | 美女网站色91| 不卡在线视频中文字幕| 国产综合久久久久久久久久久久| 91免费精品国自产拍在线不卡| 欧美精品1区2区| 自拍视频在线观看一区二区| 老汉av免费一区二区三区| 色综合天天综合给合国产| 国产午夜精品久久久久久久| 日本欧美一区二区三区乱码| 色婷婷精品大视频在线蜜桃视频| 久久久五月婷婷| 日韩毛片一二三区| 国产v日产∨综合v精品视频| 91精品啪在线观看国产60岁| 亚洲主播在线播放| 成人av电影免费在线播放| 欧美精品一区二区久久久| 日本麻豆一区二区三区视频| 91豆麻精品91久久久久久| 国产成人免费高清| 亚洲综合在线视频| 欧美videos大乳护士334| 国产不卡在线视频| 成人毛片在线观看| 欧美国产日本韩| 成人激情综合网站| 国产精品美日韩| 精彩视频一区二区三区 | 久久久精品免费观看| 免费观看30秒视频久久| 欧美一区日韩一区| 蜜臀久久99精品久久久久宅男| 欧美疯狂做受xxxx富婆| 美女一区二区在线观看| 日韩一区二区三区电影| 国产一区二区三区观看| 国产三级一区二区三区| 久久一留热品黄| 欧美一区二区三区公司| 精品一区二区三区蜜桃| 久久众筹精品私拍模特| zzijzzij亚洲日本少妇熟睡| 国产亚洲短视频| 91免费在线播放| 日韩不卡在线观看日韩不卡视频| 精品日韩99亚洲| 成人综合在线网站| 亚洲第一会所有码转帖| 日韩免费高清电影| www.色精品| 伊人一区二区三区| 欧美本精品男人aⅴ天堂| 国内精品自线一区二区三区视频| 欧美极品aⅴ影院| 欧美三级在线看| 国产一区二区电影| 一区二区三区欧美日| 日韩三级高清在线| 盗摄精品av一区二区三区| 亚洲午夜羞羞片| 久久久久久亚洲综合影院红桃 | kk眼镜猥琐国模调教系列一区二区 | 日韩av不卡在线观看| 国产亚洲欧美在线| 欧美日精品一区视频| 国产成人午夜精品影院观看视频 | 91精品欧美久久久久久动漫| 美女视频黄频大全不卡视频在线播放| 国产女主播视频一区二区| 欧美在线免费播放| 丁香网亚洲国际| 久久国产尿小便嘘嘘| 亚洲免费观看高清完整版在线观看 | 成人av网站免费观看| 性做久久久久久久免费看| 国产精品大尺度| 欧美精品一区二区三区蜜桃视频| 91看片淫黄大片一级在线观看| 国产在线播精品第三| 免费在线观看一区| 亚洲韩国一区二区三区| 久久色在线观看| 欧美电视剧免费全集观看| 欧美精品乱码久久久久久按摩| 91蜜桃婷婷狠狠久久综合9色| 国产成人小视频| 国产在线一区观看| 美女精品一区二区| 日韩和欧美一区二区三区| 亚洲自拍另类综合| 伊人婷婷欧美激情| 一区二区三区色| 亚洲情趣在线观看| 中文字幕字幕中文在线中不卡视频| 日韩欧美国产一区二区在线播放| 91精品国产一区二区三区蜜臀| 欧美中文字幕一区二区三区| 成人综合婷婷国产精品久久| 国产超碰在线一区| 国产不卡在线一区| www.欧美日韩| 91视频.com| 色综合久久88色综合天天6| 99精品欧美一区二区蜜桃免费| 不卡av在线免费观看| jlzzjlzz亚洲女人18| www.成人在线| 色哟哟精品一区| 欧美性受极品xxxx喷水| 欧美日韩黄色一区二区| 欧美丰满美乳xxx高潮www| 欧美日本精品一区二区三区| 在线视频一区二区三区| 欧美中文字幕亚洲一区二区va在线| 色婷婷精品大在线视频| 欧美亚洲禁片免费| 欧美日韩不卡一区| 欧美放荡的少妇| 精品久久国产字幕高潮| 久久九九影视网| 亚洲欧洲美洲综合色网| 亚洲图片有声小说| 久久av老司机精品网站导航| 国产一区二区精品在线观看| 99久久婷婷国产精品综合| 欧美午夜精品久久久久久孕妇 | 日本免费在线视频不卡一不卡二 | 欧美极品少妇xxxxⅹ高跟鞋| 亚洲欧美日本韩国| 青青草国产成人99久久| 大胆欧美人体老妇| 欧美日韩免费电影| 国产午夜精品一区二区| 亚洲一区免费在线观看| 国产在线精品一区二区不卡了| 99re亚洲国产精品| 欧美va亚洲va在线观看蝴蝶网| 国产精品网曝门| 蜜臀久久99精品久久久画质超高清 | 中文字幕不卡在线| 亚洲午夜成aⅴ人片| 韩国av一区二区三区四区| 一本色道久久综合亚洲aⅴ蜜桃 | 国产精品不卡在线| 日韩精品三区四区| 不卡的av网站| 5566中文字幕一区二区电影| 国产精品久久综合|