Android: ¿Qué sucede si el hilo principal finaliza antes que el hilo de trabajo?
Frecuentes
Visto 418 veces
1
Para implementar mi pantalla de inicio para mi aplicación, estoy iniciando un hilo desde el hilo principal que sleep
s por un tiempo y llama a la intención de casa. Y está funcionando bien. Pero mi preocupación es ¿Necesitamos esperar en el hilo principal? (Actualmente no estoy haciendo esto) Si el hilo principal termina primero, ¿qué sucederá y cómo manejar ese escenario?
Gracias, Venkat
2 Respuestas
1
Use este código para la pantalla de bienvenida:
Handler handler=new Handler();
Runnable r=new Runnable()
{
public void run()
{
// start another activity
}
};
handler.postDelayed(r, 5000); // wait 5 second
respondido 09 mar '12, 17:03
Esta es la respuesta correcta. ¡No es necesario iniciar un hilo cuando un ejecutable puede hacer lo mismo por usted en un controlador! - Josh
0
El subproceso principal en sí no puede ser "esperado". La aplicación no puede salir mientras haya subprocesos secundarios que no sean daemon todavía en ejecución.
Si configura los subprocesos secundarios para que sean demonios antes de iniciarlos, se terminarán inmediatamente cuando se cierre la aplicación.
respondido 09 mar '12, 17:03
Thx Tudor, así que no necesito esperar en el método principal, y mi código existente es lo suficientemente seguro, ¿verdad? - Papana Venkat
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas android multithreading or haz tu propia pregunta.
El subproceso principal no puede terminar antes de que se ejecute el subproceso "secundario". Esta es una cuestión de duración del alcance variable. Entonces, el subproceso "secundario" se crea e inicializa en el alcance del subproceso principal, por lo que mientras esté vivo, el subproceso principal también estará vivo. sll