Puntos clave:
1. Cuando se crea un hilo en el hilo principal, el IsBackground del hilo se establece como FALSE por defecto.
2. Cuando el hilo principal sale, el hilo con IsBackground=FALSE continuará ejecutándose hasta que termine la ejecución del hilo.
3. Solo los hilos con IsBackground=TRUE saldrán con la salida del hilo principal.
4. Al inicializar un hilo y establecer Thread.IsBackground=true, indica que el hilo es un hilo en segundo plano. El hilo de fondo saldrá a medida que el hilo principal salga.
5. Principio: Mientras todos los hilos de primer plano estén terminados, el CLR llamará a Abort() a cada hilo activo en segundo plano para terminar completamente la aplicación.
Adjunto otra más: Cómo salir del programa: esto. Cerca(); Si simplemente cierras la ventana actual, si no es el formulario principal, no puedes salir del programa, y si hay un hilo gestionado (no el hilo principal), no puedes salir limpiamente; Application.Exit(); forzar que todos los mensajes aborten y salgan de todos los formularios, pero si hay un hilo gestionado (no el hilo principal), no puede salir limpiamente; Application.ExitThread(); abortar forzosamente todos los mensajes en el hilo que llama, y también se enfrenta al problema de que otros hilos no pueden salir correctamente; Sistema.Entorno.Salida(0); Esta es la forma más completa de salir, sin importar qué hilo se vea obligado a salir, terminando el programa de forma muy limpia. |