Why is the task is not cancelled when I call CancellationTokenSource's Cancel method in async method?
I created a small wrapper around CancellationToken and CancellationTokenSource . The problem I have is that the CancelAsync method of CancellationHelper doesn't work as expected. I'm experiencing the problem with the ItShouldThrowAExceptionButStallsInstead method. To cancel the running task, it calls await coordinator.CancelAsync(); , but the task is not cancelled actually and doesn't throw an exception on task.Wait ItWorksWellAndThrowsException seems to be working well and it uses coordinator.Cancel , which is not an async method at all. The question why is the task is not cancelled when I