synchronized (workToDoNext) {
workToDoNow.addAll(workToDoNext);
workToDoNext.clear();
}
И ещё последнее: на этот кусок netbeans выдает хинт — синхронизация по неполному полю. Можете пояснить, чем это грозит и почему происходит(судя по нагугленому — потому, что workToDoNext изменяется в синхронизированом блоке, нет?)?