import org.apache.log4j.Logger;
/**
* 循环队列小工具,可以包括如下功能:
* 1. 可以放入对象,可以取出
* 2. 当放入对象已满,可以判断,对象出口是否关闭,如果关闭那么就代替最旧的对象,如果出口比较慢
* 可以等待一下
* 3. 出口能获得对象池中最旧的那个对象。
* 4. 服务端不能依赖于客户端的链接,能处理客户端的断开和链接。
*
* @author zjfan
*
*/
public class CycleQueueContainer {
private static final Logger log = Logger.getLogger(CycleQueueContainer.class);
private static CycleQueueContainer instance;
private CycleQueueContainer(){
}
public synchronized static CycleQueueContainer getInstance(){
if(instance == null){
instance = new CycleQueueContainer();
}
return instance;
}
private Node nodeHead;
private Node nodeTail;
private boolean fullAlarm = false;
private boolean sleepSign = false;