类java.util.AbstractQueue源码实例Demo

下面列出了怎么用java.util.AbstractQueue的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: fqueue   文件: FSStorage.java
/**
 * 获取指定名称的队列存储实例 如果不存存在,根据create参数决定是否创建
 * 
 * @param name
 * @return
 * @throws Exception
 */
private AbstractQueue<byte[]> getClientQueue(String name, boolean create) throws Exception {
    AbstractQueue<byte[]> queue = queuemMap.get(name);
    if (queue == null) {
        if (create == true) {
            lock.lock();
            try {
                queue = queuemMap.get(name);
                if (queue == null) {
                    queue = new FQueue(dbpath + "/" + name, logSize);
                    queuemMap.put(name, queue);
                }
            } finally {
                lock.unlock();
            }
        }
    }
    return queue;
}
 
源代码2 项目: fqueue   文件: FSStorage.java
/**
 * 获取指定名称的队列存储实例 如果不存存在,根据create参数决定是否创建
 * 
 * @param name
 * @return
 * @throws Exception
 */
private AbstractQueue<byte[]> getClientQueue(String name, boolean create) throws Exception {
    AbstractQueue<byte[]> queue = queuemMap.get(name);
    if (queue == null) {
        if (create == true) {
            lock.lock();
            try {
                queue = queuemMap.get(name);
                if (queue == null) {
                    queue = new FQueue(dbpath + "/" + name, logSize);
                    queuemMap.put(name, queue);
                }
            } finally {
                lock.unlock();
            }
        }
    }
    return queue;
}
 
源代码3 项目: xtext-eclipse   文件: QueuedBuildData.java
public Queue<URI> getQueue(String projectName) {
	final LinkedHashSetQueue<URI> list = projectNameToChangedResource.get(projectName);
	if (list == null)
		return uris;
	return new AbstractQueue<URI>() {

		@Override
		public boolean offer(URI o) {
			return list.offer(o);
		}

		@Override
		public URI poll() {
			if (uris.isEmpty())
				return list.poll();
			return uris.poll();
		}

		@Override
		public URI peek() {
			if (uris.isEmpty())
				return list.peek();
			return uris.peek();
		}

		@Override
		public Iterator<URI> iterator() {
			return Iterators.concat(uris.iterator(), list.iterator());
		}

		@Override
		public int size() {
			return uris.size() + list.size();
		}
	};
}
 
源代码4 项目: yuzhouwan   文件: LoadThread.java
public void run() {
    AbstractQueue<String> queue = new ArrayBlockingQueue<>(GCTest.countDownSize);
    for (int i = 0, finishedUnit = 0; ; i = i + 1) {
        // Simulate object use to force promotion into OldGen and then GC
        if (queue.size() >= GCTest.countDownSize) {
            for (int j = 0; j < GCTest.eachRemoveSize; j++) queue.remove();
            finishedUnit++;

            // every 1000 removal is counted as 1 unit.
            if (System.currentTimeMillis() - TIME_ZERO > GCTest.duration * 1000) System.exit(0);
            System.out.println(SIMPLE_DATE_FORMAT.format(new Date()) + " finished Units (1K) = " + finishedUnit);
        }
        queue.add(new String(new char[GCTest.referenceSize]).replace('\0', 'a'));
    }
}
 
/** {@inheritDoc} */
@Override
protected AbstractQueue<T> newCollection() {
    return new PriorityQueue<T>();
}
 
@Override
protected Class<? extends Collection> getExpectedTypeClass() {
  return AbstractQueue.class;
}
 
/** {@inheritDoc} */
@Override
protected AbstractQueue<T> newCollection() {
    return new PriorityQueue<T>();
}
 
源代码8 项目: fqueue   文件: FSStorage.java
/**
 * 获取或者创建指定名称的队列存储实例
 * 
 * @param name
 * @return
 * @throws Exception
 */
private AbstractQueue<byte[]> getClientQueue(String name) throws Exception {
    return getClientQueue(name, true);
}
 
源代码9 项目: fqueue   文件: FSStorage.java
/**
 * 获取或者创建指定名称的队列存储实例
 * 
 * @param name
 * @return
 * @throws Exception
 */
private AbstractQueue<byte[]> getClientQueue(String name) throws Exception {
    return getClientQueue(name, true);
}
 
 类所在包
 类方法
 同包方法