private IDisposable StartObserving(Task task) { task.ContinueWith(ContinueObservedTask, CancellationToken.None, TaskContinuationOptions.ExecuteSynchronously, TaskScheduler.Default); return Disposable.Create(() => UnobserveTaskFailure(task)); }