Java 从队列中检索所有元素,直到它为空
Java retrieve all the elements from a queue until it is empty
我想在 android/java 中实现一个 Queue 元素,这样,
- 当我在该队列中插入一个元素时,如果该元素是队列中的唯一元素,该元素将立即开始执行。
- 如果队列中还有其他元素,则它们会一个接一个地执行。
- 执行完所有元素后,队列等待插入新元素。一旦元素被插入,它将再次开始执行。
对于这种情况,什么是最好的Collection?是否有任何默认回调 any collection 提供了满足条件 3?
我能想到的一个实现是在我的队列实现中编写一个方法,类似于
public static void executeNext() {
Executor element = getFirst();
if (element != null && element.doneExecuting()) {
pop();
}
Executor next = getFirst();
next.execute();
}
执行完成后,将从我的 Executor
class object(这是我的队列的一个元素)中调用
public void onExceutionComplete(){
ExecutionQueue.getInstance().executeNext();
}
你为什么不尝试实现一个监听器,它会一直监听队列。
这将确保一旦有新条目,它们就会开始执行。
JavaDoc中描述了您需要的内容。有一个名为 SerialExecutor 的实现可能适合您的问题。
我想在 android/java 中实现一个 Queue 元素,这样,
- 当我在该队列中插入一个元素时,如果该元素是队列中的唯一元素,该元素将立即开始执行。
- 如果队列中还有其他元素,则它们会一个接一个地执行。
- 执行完所有元素后,队列等待插入新元素。一旦元素被插入,它将再次开始执行。
对于这种情况,什么是最好的Collection?是否有任何默认回调 any collection 提供了满足条件 3?
我能想到的一个实现是在我的队列实现中编写一个方法,类似于
public static void executeNext() {
Executor element = getFirst();
if (element != null && element.doneExecuting()) {
pop();
}
Executor next = getFirst();
next.execute();
}
执行完成后,将从我的 Executor
class object(这是我的队列的一个元素)中调用
public void onExceutionComplete(){
ExecutionQueue.getInstance().executeNext();
}
你为什么不尝试实现一个监听器,它会一直监听队列。
这将确保一旦有新条目,它们就会开始执行。
JavaDoc中描述了您需要的内容。有一个名为 SerialExecutor 的实现可能适合您的问题。