使用System.out打印输出作为另一个程序(Java)的输入

使用System.out打印输出作为另一个程序(Java)的输入,java,input,terminal,output,Java,Input,Terminal,Output,这里有一个简单的场景 我有一个线程,我们称之为a,它通过System.out写入终端未定义 我需要从另一个线程中检索这些信息,我们称之为B。 问题是A和B不能以任何其他方式进行通信 那么B有没有办法从终端检索这些信息呢 注:这是我正在设计的原型。线程A可以是任何其他进程,不一定用Java编写,它只在终端上不确定地运行您可以创建一个类,该类可以保存线程所需的所有信息。或者使用一个文件,像模拟控制台一样把所有东西都放在那里,但如果你问我的话,这比其他任何东西都难看。真的吗?还是过程?为什么他们不能以

这里有一个简单的场景

我有一个线程,我们称之为a,它通过System.out写入终端未定义 我需要从另一个线程中检索这些信息,我们称之为B。 问题是A和B不能以任何其他方式进行通信

那么B有没有办法从终端检索这些信息呢


注:这是我正在设计的原型。线程A可以是任何其他进程,不一定用Java编写,它只在终端上不确定地运行

您可以创建一个类,该类可以保存线程所需的所有信息。或者使用一个文件,像模拟控制台一样把所有东西都放在那里,但如果你问我的话,这比其他任何东西都难看。

真的吗?还是过程?为什么他们不能以任何其他方式交流?为什么他们不能以任何其他方式交流?“你不能实现一些让这成为可能的东西吗?”Seelenvirtuose说,这是我正在设计的原型。我现在正在使用线程。但是,如果线程A在另一个程序中被写入,只要它写入到terminal@nafas事实上,这有很大的不同。如果涉及两个进程,您可以使用操作系统将进程A的输出通过管道传输到进程B的输入,或者-如果您自己在Java程序中创建另一个进程-您可以简单地访问该进程的输入和输出流。如果你只有一个程序,所以只有一个进程有几个线程,那么它们之间的通信就有更好的选择。@Seelenvirtuose我理解你的意思,mate,我知道如果使用不同的线程,可以使用其他选择。共享资源。然而,我的问题不是这些选择。只是一个简单的java程序,它可以读取终端上打印的内容,而不管这些内容是如何打印的。这个想法是线程a只是在终端上写的,我一点也不能改变。你为什么要让线程像这样通信?如果我没弄错的话,控制台应该用来与用户进行交流,而不是与其他线程进行交流。我可能有什么想法,我已经问了这个问题,伙计。奇怪,但是如果你这么说……也许可以帮你