¿Cuándo se debe usar TaskCompletionSource <T>?

AFAIK, todo lo que sabe es que en algún momento, es SetResultoSetException método está siendo llamado para completar el Task<T>expuestos a través de su Taskpropiedad. En otras palabras, actúa como el productor de un Task<TResult> ay su finalización. Vi aqui el ejemplo: Si necesito...