none
Finalizar un hilo RRS feed

  • Pregunta

  • Voy a minimizar la pregunta para que sea mas simple de explicar lo que necesito.

    tengo un hilo y en su interior corre otro hilo (o sea tengo hilos anidados)

    dentro del primer hilo tengo un se llama al segundo hilo y ademas cuenta con un join().

    Se lanza el segundo hilo pero el problema que tengo es que debo finalizarlo... para que de nuevo se ejecute el hilo 1

    ¿O sea la pregunta es como finalizar un hilo? 

    domingo, 30 de septiembre de 2018 0:49

Respuestas

  • Para finalizar un hilo se llama al método Interrupt o Abort. Por ejemplo, si lo creaste así:

    Thread hilo = new Thread(...);

    entonces lo interrumpes con hilo.Interrupt();

    Eso genera una excepción del tipo ThreadInterruptedException dentro del hilo. La puedes interceptar con un try...catch, y dentro del catch haces un "return" y eso termina el hilo.

    Nótese que no tiene nada que ver con el hecho de que esté "anidado" como decías; de hecho, los hilos no se pueden anidar, todos son completamente independientes unos de otros sin que tenga ninguna influencia el hecho de que en el momento de iniciar el hilo la rutina que lo inició se ejecutase desde dentro de otro hilo.

    domingo, 30 de septiembre de 2018 7:48
    Moderador