private static void HandleException(ITask currentTask, Exception e) { Dispatcher.LogError(Resource1.HandleExceptionLog, e); Dispatcher.FilterExceptionThroughCausalities(currentTask, e); Dispatcher.SetCurrentThreadCausalities(null); if (currentTask != null && currentTask.ArbiterCleanupHandler != null) { try { currentTask.ArbiterCleanupHandler(); } catch (Exception exception) { Dispatcher.LogError(Resource1.ExceptionDuringArbiterCleanup, exception); } } }