2010-10-20 27 views
0

Créer de nouveaux processus à partir d'un code Java en utilisant ProcessBuilderjava nouveau processus - est nécessaire pour obtenir et lire ErrorStreams et de sortie

ProcessBuilder builder = new ProcessBuilder("/path/to/bin"); 
Process process = builder.start(); 

Dans ce cas, je ne suis pas intéressé à voir l'erreur/sortie. Est-il nécessaire d'extraire OutputStream et ErrorStream? Est-il automatiquement ignoré?

La sortie peut être grande (10 Mo) - dans certains cas.

Répondre

4

Vous n'êtes pas obligé de faire quoi que ce soit avec ces flux, mais vous devez savoir que le processus créé peut bloquer si les tampons de sortie sont pleins. Si vous savez que le processus que vous créez ne produit pas beaucoup (ou aucune) sortie vers stdout ou stderr, alors vous êtes probablement OK, sinon vous devriez créer des threads qui lisent et rejettent la sortie de chaque flux.