Stallo con Java process.waitFor()
 DOMANDA:   Nell'eseguire un programma esterno con Runtime.exec(), perché se uso il metodo process.waitFor() va tutto in stallo?    package process;   import java.io.IOException;   public class  ProcessTest {       public static void  main(String[] args)                        throws IOException, InterruptedException {           Runtime runtime = Runtime.getRuntime();          Process process = runtime.exec( "cmd /C C:\\ffmpeg -i C:\\input.avi C:\\output.avi" );          process.waitFor();          System.out.println( "FINE" );      }  }     RISPOSTA:   Eseguendo il codice della domanda, la stringa "FINE" non verrà mai eseguita. La causa del problema è la bufferizzazione di stdout e stderr . Infatti spesso capita che i dati in arrivo ai vari stream non siano sufficienti a riempire completamente i buffer. Quindi, finché i buffer n...
