Есть ещё http://docs.scala-lang.org/sips/pending/async.html (и, соответственно, https://github.com/scala/async). Вероятно вы его видели, просто не упомянули в вопросе. Это не совсем continuations, но, насколько я понимаю, выполняемую этим макросом трансформацию можно использовать и как основу для них.
ExecutorService executor = Executors.newFixedThreadPool(4);
List<Future<MyResult>> futures = new ArrayList<>();
for (File path: imgToProcPath) {
executor.submit(new MyImageProcessingTask(path);
}
for (Future<MyResult> future: futures) {
displayThumbnail(future.get());
}