Une connexion PipedInputStream/PipedOutputStream fonctionne très bien lorsque les données doivent uniquement être acheminées vers une sortie, mais si plusieurs flux de sortie sont connectés à un flux d'entrée, les données deviennent fragmenté entre les différentes sorties. Ma solution actuelle implique d'avoir un "lecteur" threadé qui lit les données d'un InputStream et écrit ensuite les données dans les objets OutputStream qui ont été associés au lecteur. Cela semble fonctionner, mais il semble désordonné et inefficace par rapport aux classes natives PipedIO.Meilleure façon de canaliser les données d'un flux d'entrée vers plusieurs flux de sortie
Y a-t-il une meilleure façon de gérer cela ou est-ce que l'implémentation avec laquelle je travaille est aussi bonne que je vais le faire?
Merci pour la réponse. Vous avez raison de supposer que les données ne sont pas persistantes. Fondamentalement, je lis les données d'une connexion SSH à des fins de vérification. Je tamponne les réponses de commande afin qu'elles puissent être vérifiées par rapport au comportement attendu, écrire des données dans un journal de débogage si nécessaire et écrire toutes les données dans une interface graphique à des fins de surveillance. Puisque je ne m'inquiète vraiment que de tamponner de petites quantités de données pour la réponse à une commande, je pense que je vais soit m'en tenir à ma méthode actuelle, soit à la méthode multiplex ci-dessus à moins qu'il n'y ait d'autres suggestions. – WeeTodd