Duda teorica sobre procesos simultaneos...!!!

Iniciado por rigoxls, 18 Julio 2009, 00:18 AM

0 Miembros y 1 Visitante están viendo este tema.

rigoxls

Hola a todos comunidad,

MI pregunta es teorica ya que no se como explicarla por medio de codigo, cualquier consejo que me brinden ayudara a solucionar mi problema.

El lio es el siguiente, tengo una aplicacion que implementa una hilo, este hilo se ejecuta cada X cantidad de tiempo y me hace un determinado proceso que llamo PROCESO 1, ahora el usuario tambien puede interactuar con el sistema y ejecutar el proceso PROCESO 1  a voluntad propia...

Y pues no se como evitar que tanto el hilo como la accion del usuario me activen el PROCESO 1 al mismo tiempo. Es decir si primero ingresa a PROCESO 1 el hilo no se como evitar que mientras se ejecuta ese proceso el usuario no pueda volver a llamarlo y si el usuario llama dicho proceso, que el hilo no lo pueda llamar....

gracias por las respuestas
No hay verdades absolutas sin ciegas posiciones !!!

Amerikano|Cls

Si estas trabajando con la clase Thread, puedes hacer uso del metodo isAlive() que determina si el hilo esta activo y luego hacer lo que buscas:

http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Thread.html#isAlive%28%29

salu2




Mi blog:
http://amerikanocls.blogspot.com

rigoxls

Saludos, gracias por responder,

Bueno mas o menos asi es el hilo que se ejecuta, y sucede que siempre va estar activo isAlive() ya que se ejecuta cada x cantidad de tiempo durante la ejecucion de la aplicacion y solo se detiene si se cumple una condicion que es la que esta con comentarios... Pero aveces me genera error en tiempo de ejecucion.

class Hilos extends Thread{  //creamos la clase hilo   
   
    public Hilos (String id){   
    }
   
    public void run(){ //corremos la clase hilo   
    int sleepTime;
    while(1==1){   
    while(mover.valc==2){ //me detiene el hilo momentaneamente mientras se ejecuta el metodo 1 desde otro metodo   
   
    grav.gravedad1();   
    txt.requestFocus();
   
   
    try{
    sleep(dormir);
    }catch(InterruptedException exception){
    System.err.println("ha ocurrido un error");
        }   
    }
    }   
    }
    }//fin de la clase hilos


No hay verdades absolutas sin ciegas posiciones !!!