Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/05/2011, 12:59
djeffer_ch2
 
Fecha de Ingreso: noviembre-2010
Mensajes: 3
Antigüedad: 14 años
Puntos: 0
Llamar a un método desde otro hilo

Hola a todos.
Tengo un pequeña duda existencial en la llamada a una función de una clase creadora desde una clase creada por ella.
Me explico.
Esquemáticamente, estoy utilizando dos clases:

Una clase que gestiona el sistema de monitoreo.
Código:
public Class Sistema {
	Detector det = new Detector();
	// Otras cosas relacionadas a Sistema
	
	public iniciarDetector() {
		new Thread(det).start();
	}
	
	public void activarAlarma() {
		// Procedimiento de activación de la alarma.
	}
	
	// Otras funciones del sistema
	
}

Y otra clase encargada de la detección de los cambios de temperatura.
Código:
public Class Detector extends Runnable{
	int temp;
	boolean exit=true;
	
	public void run() {
		while(exit) {
			temp = detectarTemp();
                        if (temp>50) {
                              // LLAMAR A FUNCION activarAlarma DE LA CLASE SISTEMA
                        }
		}
	}
	
	public int detectarTemp() {
		// Detectar Temperatura
	}
}
Se asume que la instancia de Sistema se crea en algún otro lugar de la aplicación, así como la llamada a la función iniciarDetector. Adicionalmente, la función activarAlarma no puede ser estática debido a que utiliza datos variables propios de la clase Sistema.
Pues bien, mi duda radica en la forma más adecuada para que, cuando el valor de temp de la clase Detector cambie (if (temp>50)), se informe a la clase Sistema sobre dicho cambio, llamando a la función activarAlarma.
¿Alguna sugerencia?
Gracias de antemano.