public boolean processTaskQueue() {
boolean processed = false;
Task task = this.taskQueue.poll();
if (task != null) {
if (task.isDone()) {
task.printException();
task.onComplete();
processed = true;
} else {
// put entry back on top of queue
this.taskQueue.push(task);