public Task <bool> Cancel() { bool response = false; foreach (var item in _runningProcess) { if (!(response = ProcessInvoker.TryCancel(item))) { //force cancel if can and throw exception ProcessInvoker.Cancel(item); response = true; } } return(Task.FromResult(response)); }