protected override void AfterExecute(Runnable task, Exception exception) { if (task is FutureTask <object> ) { FutureTask <object> futureTask = (FutureTask <object>)task; if (!futureTask.IsCancelled()) { try { futureTask.Get(); } catch (ExecutionException ee) { exception = ee.InnerException; } catch (Exception ie) { exception = ie; } } } if (exception != null) { Log.Error("Exception during execution of task in DeletionService", exception); } }
public void IsDoneIsCanceledAndGet() { FutureTask<int> ft = new FutureTask<int>(new InmediatlyCallable(13)); Assert.AreEqual(false, ft.IsDone); Assert.AreEqual(false, ft.IsCancelled); ft.Run(); Assert.AreEqual(13, ft.Get()); //The result Assert.AreEqual(true, ft.IsDone); Assert.AreEqual(false, ft.IsCancelled); }
public void IsDoneIsCanceledAndGet() { var ft = new FutureTask <int>(new InmediatlyCallable(13)); Assert.AreEqual(false, ft.IsDone); Assert.AreEqual(false, ft.IsCancelled); ft.Run(); Assert.AreEqual(13, ft.Get()); //The result Assert.AreEqual(true, ft.IsDone); Assert.AreEqual(false, ft.IsCancelled); }