IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Savoir qu'un process qu'on vient de lancer est lancé.


Sujet :

Langage Java

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 14
    Points : 8
    Points
    8
    Par défaut Savoir qu'un process qu'on vient de lancer est lancé.
    Bonjour,

    Voici mon probleme:

    J'ai un thread Java qui lance un process externe, lui meme en java, par la methode "getRuntime().exec(...)"

    Apres ceci, il doit tester si le process est bien lancé (par RMI).

    J'ai d'abord pensé à faire un wait/sleep(...) sur le Thread pour laisser le process se lancé, puis faire un test. Mais mon wait/sleep s'execute aussi sur le process. Du coup, probleme.

    J'ai regardé, et en fait, il me faudrait la meme chose qu'un waitFor(), mais pour la fin du lancement, et non la fin du process.

    Si une telle fonction n'est pas possible, comment faire pour que mon sleep n'affecte pas mon process, mais seulement mon thread.

    Merci de votre aide.

  2. #2
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,


    Si Runtime.exec() renvoit une exception c'est que ton process n'est pas lancé... sinon il est bien lancé.

    enfin la méthode sleep() n'affecte pas les process lancées...


    Il faudrait préciser un peu plus ton problème exact...

    a++

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 14
    Points : 8
    Points
    8
    Par défaut
    Contexte:
    Mon Thread est un thread de supervision qui doit tester mon process toutes les minutes, et le relancer en cas de panne.
    Mon process est un thread qui se reveille à intervalle regulier pour effectuer une tache. Le process prend normalement une dizaine de secone à demarrer.


    Cas:
    En fait, j'ai un Thread qui lance un process java par un Runtime.exec()
    Une fois le process lancé, le Thread l'interroge par RMI pour savoir si son lancement s'est bien passé (lancement + initialisation).

    J'ai alors 2 cas:

    -Soit je mets le binding RMI de mon process avant la lecture de la conf, et la, le Thread accede bien à mon appli. Inconvenient: Prob si l'initialisation de la conf plante.

    -Soit, je mets mon binding RMI de mon process apres la lecture de la conf, et la, meme si je peux mettre un sleep de mon thread de 3 minutes, lorsque je reteste, il me dit que mon process est unreachable.

    Merci de votre aide.

Discussions similaires

  1. Comment savoir si un process est en cours d'execution
    Par luroten dans le forum Windows
    Réponses: 2
    Dernier message: 08/10/2014, 15h11
  2. Réponses: 12
    Dernier message: 08/07/2008, 13h34
  3. Comment savoir si un process a déjà été lancé?
    Par strat0 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 03/08/2007, 11h59
  4. Réponses: 4
    Dernier message: 03/12/2006, 15h41
  5. [API WIN32] Savoir si le process a été lancé dans une console
    Par QuantuX dans le forum Autres éditeurs
    Réponses: 3
    Dernier message: 13/06/2006, 16h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo