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 :
Le rsh génère 2 fichiers que je récupère par les rcp.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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();
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
Partager