带有共享变量的Java Processbuilder
我正在尝试使用Processbuilder运行2个进程。。问题是,我想知道这两个进程是否都可以使用共享变量 比如说,我有一个主进程,它创建并运行其他p1和p2进程 我在main_p中声明了一个整数,我可以通过某种方式传递变量引用或者同时从p1和p2访问变量吗 主要的带有共享变量的Java Processbuilder,java,multiprocessing,processbuilder,Java,Multiprocessing,Processbuilder,我正在尝试使用Processbuilder运行2个进程。。问题是,我想知道这两个进程是否都可以使用共享变量 比如说,我有一个主进程,它创建并运行其他p1和p2进程 我在main_p中声明了一个整数,我可以通过某种方式传递变量引用或者同时从p1和p2访问变量吗 主要的 ProcessBuilder pb1 = new ProcessBuilder("java", "-jar", process_1_path, param); Process p1 = pb1.start(); Buffer
ProcessBuilder pb1 = new ProcessBuilder("java", "-jar", process_1_path, param);
Process p1 = pb1.start();
BufferedReader in1 = new BufferedReader(new InputStreamReader(p1.getInputStream()));
ProcessBuilder pb2 = new ProcessBuilder("java", "-jar", process_2_path, param);
Process p2 = pb2.start();
BufferedReader in2 = new BufferedReader(new InputStreamReader(p2.getInputStream()));
提前感谢。您可以通过进程之间的进程输入/输出流创建管道,并使用它交换数据。或者通过一个文件,或者DB、RMI或JMS,我认为如果我需要运行第一个进程,并且当它完成后,我运行另一个进程,并使用i/o streems传递从第一个进程获取的参数,那么这可能会起作用。但我需要在几乎相同的时间同时运行它们,我考虑使用文件来共享数据,以防出现其他方法:如果你开始像Q那样显示进程,那么管道应该工作两个java程序,你想进行通信——你考虑过线程吗?我已经用线程实现了同样的事情。但我需要使用多进程再次实现它