Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

156
Vistas
¿Cómo pasar un mensaje de TimerTask al hilo principal?

Tengo un cliente principal que mantiene temporizadores de fondo para cada par. Estos temporizadores se ejecutan en un subproceso en segundo plano y en 30 s (el período de tiempo de espera) están programados para realizar la tarea de marcar al par respectivo como fuera de línea. El bloque de código para hacer esto es:

 public void startTimer() { timer = new Timer(); timer.schedule(new TimerTask() { public void run() { status = false; System.out.println("Setting " + address.toString() + " status to offline"); // need to send failure message somehow thread.sendMessage(); } }, 5*1000); }

Luego, en el programa principal, necesito alguna forma de detectar cuándo se ejecutó la tarea del temporizador anterior, de modo que el cliente principal pueda enviar un mensaje de failure a todos los demás compañeros, algo como:

 while (true) if (msgFromThreadReceived) notifyPeers();

¿Cómo podría lograr esto con TimerTask? Según tengo entendido, el temporizador se está ejecutando en un subproceso separado, y de alguna manera quiero pasar un mensaje al subproceso principal para notificar al subproceso principal que se ha ejecutado la tarea.

over 4 years ago · Santiago Trujillo
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda