elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Ayuda para el metodo Wait()
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda para el metodo Wait()  (Leído 4,673 veces)
ITenZangetsuB

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Ayuda para el metodo Wait()
« en: 20 Enero 2018, 18:28 pm »

Estoy intentando hacer este ejercicio:

Implementar una carrera por relevos:
-Tenemos 4 Atletas dispuestos a correr
-Tenemos una clase principal Carrera
-Tenemos un objeto estático testigo
-Todos los atletas empiezan parados, uno comienza a correr (tarda entre 9 y 11s) y al terminar su
carrera pasa el testigo a otro que comienza a correr, y así sucesivamente
-Pistas:
- Thread.sleep y Math.random para simular la carrera
- synchronized, wait y notify para el paso del testigo o utlizar un Semaphore como testigo
- System.currentTimeMillis o Calendar para ver tiempos



Se que tengo que hacer el metodo wait de alguna forma para que los atletas se quedan esperando hasta que el otro llegue.

Si me podéis decir como llegar a la solucion o ayudar os la agradeceria

Esto es lo que llevo:


public class Carrera extends Thread{

   private static int testigo;
   private String[] relevos=new String[5];
   
   @Override
   public void run() {
      // TODO Auto-generated method stub
      
      for (int i = 1; i < relevos.length; i++) {
         
         int numeroAleatorio=(int)(Math.random()*(11-9+1) + 9);
         try {
            
            Thread.sleep(numeroAleatorio);
         System.out.println("Tiempo de espera");
         
      
         
         } catch (InterruptedException e)
         
         {
            System.out.println (e);
            
         
         }
         
              
           System.out.println (i+" Comienza a correr"); 
      }
            
      //Fin del metodo run
   }
   
   
   
   
}


En línea

srWhiteSkull


Desconectado Desconectado

Mensajes: 444



Ver Perfil WWW
Re: Ayuda para el metodo Wait()
« Respuesta #1 en: 29 Enero 2018, 04:53 am »

https://docs.oracle.com/javase/tutorial/essential/concurrency/guardmeth.html


En línea

MoonLord07

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: Ayuda para el metodo Wait()
« Respuesta #2 en: 1 Julio 2020, 20:35 pm »

Estoy intentando hacer este ejercicio:

Implementar una carrera por relevos:
-Tenemos 4 Atletas dispuestos a correr
-Tenemos una clase principal Carrera
-Tenemos un objeto estático testigo
-Todos los atletas empiezan parados, uno comienza a correr (tarda entre 9 y 11s) y al terminar su
carrera pasa el testigo a otro que comienza a correr, y así sucesivamente
-Pistas:
- Thread.sleep y Math.random para simular la carrera
- synchronized, wait y notify para el paso del testigo o utlizar un Semaphore como testigo
- System.currentTimeMillis o Calendar para ver tiempos



Se que tengo que hacer el metodo wait de alguna forma para que los atletas se quedan esperando hasta que el otro llegue.

Si me podéis decir como llegar a la solucion o ayudar os la agradeceria

Esto es lo que llevo:


public class Carrera extends Thread{

   private static int testigo;
   private String[] relevos=new String[5];
   
   @Override
   public void run() {
      // TODO Auto-generated method stub
      
      for (int i = 1; i < relevos.length; i++) {
         
         int numeroAleatorio=(int)(Math.random()*(11-9+1) + 9);
         try {
            
            Thread.sleep(numeroAleatorio);
         System.out.println("Tiempo de espera");
         
      
         
         } catch (InterruptedException e)
         
         {
            System.out.println (e);
            
         
         }
         
              
           System.out.println (i+" Comienza a correr"); 
      }
            
      //Fin del metodo run
   }
   
   
   
   
}


Como estas amigo llevo POO como asignatura y el maestro únicamente deja pdf para leer y ya se que nuestro trabajo es leer y es lo que hago busco vídeos y libros para siempre aprender aun mas y ya estoy en mi proyecto final y este mismo fue el que me toco junto con uno de fumadores he podido correr sin problemas pero este el de los atletas lo he tenido que hacer una y otra vez no se si el problema es uno de los métodos si lo llegaste a completar podrías compartirlo por favor te estaría muy agradecido
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda para insertar una clave en el registro de un método... (SOLUCIONADO)
Scripting
SuperDraco 6 7,023 Último mensaje 3 Diciembre 2009, 19:41 pm
por SuperDraco
wait() en c++ (windows)
Programación C/C++
soyloqbuskas 9 12,836 Último mensaje 22 Diciembre 2011, 12:41 pm
por BlackZeroX
[ayuda]cual es metodo para imprimir
Programación C/C++
adamsst 0 1,972 Último mensaje 3 Agosto 2012, 17:48 pm
por adamsst
Ayuda con metodo para duplicarCola en java
Java
saulmtzs 1 1,918 Último mensaje 5 Septiembre 2012, 04:36 am
por [Case]
Ayuda para quitar una firma. Método XOR, MEEPA y error de acess violation.
Análisis y Diseño de Malware
ccjrocks 4 3,830 Último mensaje 9 Julio 2013, 02:44 am
por The Swash
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines