Token de cancelación en el constructor de tareas: ¿por qué?

CiertoSystem.Threading.Tasks.Task los constructores toman unCancellationToken como parámetro:

CancellationTokenSource source = new CancellationTokenSource();
Task t = new Task (/* method */, source.Token);

Lo que me desconcierta de esto es que no hay forma dedentro el cuerpo del método para obtener realmente el token pasado (por ejemplo, nada comoTask.CurrentTask.CancellationToken) El token debe proporcionarse a través de algún otro mecanismo, como el objeto de estado o capturado en una lambda.

Entonces, ¿para qué sirve proporcionar el token de cancelación en el constructor?

Respuestas a la pregunta(3)

Su respuesta a la pregunta