[Process]Execution de process dans un thread
Bonjour à tous. Je suis sur un problème depuis quelques temps et ne vois pas trop comment m'en sortir. J'exécute trois commandes UNIX dans un thread. Le thread sert juste à désynchroniser ma page courante de l'execution des commandes UNIX ( celles-ci peuvent être longues et je ne veux pas bloquer l'utilisateur ).
Dans le thread :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
// Commande 1 sur marchine UNIX
Runtime env = Runtime.getRuntime();
Process process = env.exec("rsh ......");
process.waitFor();
// Commande 2 sur marchine UNIX
Runtime env = Runtime.getRuntime();
Process process = env.exec("rcp fic1");
process.waitFor();
// Commande 3 sur marchine UNIX
Runtime env = Runtime.getRuntime();
Process process = env.exec("rcp fic2");
process.waitFor(); |
Le rsh génère 2 fichiers que je récupère par les rcp.
Problème : Les 3 commandes marchent, c'est leur enchainement qui ne marche pas.
Je m'explique : Le premier "rcp" ne fait rien alors que le second marche. Si je double les rcp je vois qu'effectivement il y en a un sur deux qui marche. C'est comme si il était nécessaire de faire une sorte de "flush()" entre chaque exec pour "libérer quelque chose".
Avez-vous déjà rencontré ce genre de problème.
Merci
[Modéré par Didier]
Ajout de tag dans le titre
Ajout de balises code
Lire les règles du forum : Règles du forum Java