Hola tengo corriendo dos hilos que instancian una clase en java.
Cada uno de los hilos ejecutan un bucle, y mi intencion es que cuando un hilo llegue a 50 iteraciones del bucle espere a que el otro hilo llegue a 50 iteraciones tambien. Cuando los dos lleguen a 50 iteraciones hago un intercambio de datos entre ambos hilos o clases, y vuelvo a dejarlos correr de forma paralela. El problema es que cuando hago un wait() en uno de estos hilos al llegar a las 50 iteraciones se sale del try y sigue ejecutando el codigo, en vez de esperar a que el otro hilo le haga un notify().
Espero que me haya explicado bien.
Adjunto el codigo:
la clase con el main llama a la clase Principal :
public static void main(String[] args) {
System.out.println("---------INICIO-------------");
Principal P1=new Principal(1);
Principal P2=new Principal(2);
P1.setName(" 1");
P2.setName("2");
P1.start();
P2.start();
La clase Principal:
public class Principal extends Thread {
public void run()
{
if(i==50)
{
System.out.println("Paramos el hilo a espera "+this.getName()+" en la Iteracion "+i+"
try{
System.out.println(" parada de "+this.getName());
this.wait();
}catch(Exception e)
{}
migration=migration+50;
}