Category "task-parallel-library"

Don't understand behavior of Tasks in C#

I'm hoping someone can help me understand what seems like some straightforward code. Clearly, I'm missing something. There are 2 things I don't understand about

Looking for Task.IsPending

I often do something like this: if (task != null && !task.IsCompleted && !task.IsCanceled && !task.IsFaulted) { // do something, e.