X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fworkers%2FAlignCalcManager2.java;h=0057500ae492b09a4ca55fdac537893d7a79e289;hb=c2b931a5a0ea81bdc93db1f0cf632b07717c5066;hp=7a193214194b26a9638c431c0baa44289f9c765f;hpb=e756b6615edab2c9c33f5402dc337065a6799065;p=jalview.git diff --git a/src/jalview/workers/AlignCalcManager2.java b/src/jalview/workers/AlignCalcManager2.java index 7a19321..0057500 100644 --- a/src/jalview/workers/AlignCalcManager2.java +++ b/src/jalview/workers/AlignCalcManager2.java @@ -183,6 +183,8 @@ public class AlignCalcManager2 implements AlignCalcManagerI2 } else if (!completed) { + Cache.log.debug(format("Polling worker %s", + worker.getClass().getName())); if (worker.poll()) { Cache.log.debug(format("Worker %s finished", @@ -198,14 +200,12 @@ public class AlignCalcManager2 implements AlignCalcManagerI2 } if (completed) { - try - { - future.cancel(false); - } - catch (NullPointerException ignored) - { - // extremely unlikely to happen - } + Cache.log.debug(format("Finalizing completed worker %s", + worker.getClass().getName())); + worker.done(); + // almost impossible, but the future may be null at this point + // let it throw NPE to cancel forcefully + future.cancel(false); } } }; @@ -224,6 +224,9 @@ public class AlignCalcManager2 implements AlignCalcManagerI2 task.cancel(false); executor.submit(() -> { worker.cancel(); + Cache.log.debug(format("Finalizing cancelled worker %s", + worker.getClass().getName())); + worker.done(); }); } }