Bonjour,

J'ai un soucis avec un BufferedReader, en fait j'exécute un procéssus externe sur lequel je récupére les données pour les réafficher dans une commande dos. mais au dessus de 1000 lignes afficher le processus se bloque et je pense que cela vient du BufferedReader. Par le processus se bloque je veux dire plus d'affichage et pause de process si je fait un ctrl+c arrêt du process dans la commande dos le process continu.

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
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
 
 try
        {
            Runtime r = Runtime.getRuntime();
            System.out.println("setting environment");
            String commande="cmd /c q:\\QACBATCH\\QacppConf "+args[0];
            Process p3 = r.exec(commande);
 
            try {
            BufferedReader reader = new BufferedReader(new InputStreamReader(p3.getInputStream()));
            String line = "";
 
                   try {
                        while((line = reader.readLine()) != null) {
 
                            System.out.println(line);
 
                        }
 
                } finally {
                    reader.close();   
                }
        } catch(IOException ioe) {
            ioe.printStackTrace();
        }
 
 
            p3.getErrorStream().close();
            p3.waitFor();
 
 
        }
 
        catch (Exception e)
        {
            System.out.println("erreur d'execution " + e.toString());
            e.printStackTrace();
        }
Merci