¿Por qué no comenzar un hilo en el constructor? ¿Cómo terminar?
Estoy aprendiendo a usar hilos en Java. Y escribí una clase que implementa Runnable para ejecutarse simultáneamente a otro hilo. El subproceso principal se encarga de escuchar el puerto serie, mientras que el segundo subproceso se encargará de enviar datos a ese mismo puerto.
public class MyNewThread implements Runnable {
Thread t;
MyNewThread() {
t = new Thread (this, "Data Thread");
t.start();
}
public void run() {
// New Thread code here
}
Hay el primer hilo comienza el segundo así:
public class Main {
public static void main(String[] args) throws Exception{
new MyNewThread();
// First thread code there
}
}
Esto funciona, pero mi compilador señala una advertencia que dice: Es peligroso iniciar un nuevo hilo en el constructor. ¿Por qué es esto
La segunda parte de esta pregunta es: ¿cómo si tengo un bucle ejecutándose en un subproceso (el subproceso de escucha del puerto serie) y escribo un comando de salida en mi segundo subproceso? ¿Cómo consigo que termine el primer hilo? Gracias