Supongamos, no es una tarea que contiene las siguientes acciones aproximadamente:¿Cómo forzar la cancelación de una tarea?
Task someTask = new Task(() => {
while(!IsCancellationRequested) {
Do_something_over_a_long_period_of_time();
token.ThrowIfCancellationRequested();
Do_something_over_a_long_period_of_time();
token.ThrowIfCancellationRequested();
Do_something_over_a_long_period_of_time();
token.ThrowIfCancellationRequested();
}
});
someTask.Start();
Y hay usuarios muy impacientes. Anhelan terminar mi solicitud de inmediato. No quieren esperar mientras se ejecuta una larga acción.
Solía utilizar la clase Thread
y pude abortar todos mis hilos inmediatamente con la invocación del comando Abort()
.
¿Cómo cancelo mis tareas inmediatamente?
Gracias.
¿Has mirado BackgroundWorker? – HadleyHope
@HadleyHope ¿Cómo resolvería Background Worker su problema? Es compatible con la cancelación de manera similar a las tareas – Kugel