GNT sans publicité, site mobile, fonctionnalitées exclusives...

Fiabilité du Runtime.exec() pour éxécuter une command externe

Le
figus
Salut à tous

Je suis sur le point d'utiliser Runtime.exec() pour lancer des commandes
externes.

Seulement voilà. A la lecture de la javadoc, je suis pas très optimiste
sur le bon fonctionnement de la chose.

1ère raison : parmi les commandes externes que je vais lancer, il y a
des shell scripts. Quelles sont vos expériences dans le domaine ?
Quelles leçons en avez-vous tiré ?

2ème raison : l'interfaçage avec les input et output stream du process
ne semblent pas très fiables et surtout les conséquences sont plus
qu'ennuyeuses. Je cite la javadoc : "may cause the subprocess to block,
and even deadlock". La javadoc recommande l'utilisation de stream
bufferisé mais malgré tout, je ne suis pas plus rassuré que ça. Donc
mêmes questions : quelles sont vos expériences et quelles leçons en
avez-vous tiré ?

Merci d'avance.
Lire les 2 réponses

Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Zazoun
Le #192521
La lecture de l'article
http://www.javaworld.com/javaworld/...traps.html (en
anglais) peut t'être utile. Il présente en particulier une méthode
pour vider l'error stream et l'input stream du processus créé, et
éviter que celui-ci ne s'arrête.

Zazoun
figus
Le #192518
Zazoun wrote:
La lecture de l'article
http://www.javaworld.com/javaworld/...traps.html (en
anglais) peut t'être utile. Il présente en particulier une méthode
pour vider l'error stream et l'input stream du processus créé, et
éviter que celui-ci ne s'arrête.


Merci.
J'étais pas loin du compte, mais j'avais quand même des soucis.

C'est loin d'être simple si on a pas une référence comme celle-là.

Publicité
Suivre les réponses
Poster une réponse
Anonyme