2009-08-11 7 views
5

En mi programa tengo una tarea muy larga, que debe ser interrumpible desde la GUI (WPF). ¿Algún consejo sobre la arquitectura de subprocesos?Enhebrado en C#. Tarea interrumpible

Esta tarea se ve como hilo N con dicho código:

public void DoLongOperation() 
{ 
    for(int i=beginPoint; i<endPoint; i++) 
    { 
     doSomethingStupid(dataArray[i]); 
    } 
} 

Respuesta

-1

Bueno, puede verificar si debe detenerse, cada iteración de bucle, marcando un bool. O simplemente interrumpa() y maneje la excepción (si es seguro que se elimine en cualquier momento).

0

.Interrumpir() en un hilo no es la mejor manera, la única buena manera es con un bool como dices en tu respuesta.