这背后的想法是我有一个主要的类充当代理,不断运行并等待指令。然后,指示代理启动另一个扮演监视角色的类的实例。
由于监控类的每个实例都要进行大量打印(加上代理类也会打印一点点),我希望每个实例都有自己的命令窗口来完成所有打印。
这可能吗?如果没有,我欢迎有关如何获得类似效果的建议。
谢谢。
编辑:我觉得有些澄清是有道理的。我想为每个监控实例启动一个新的命令/终端窗口,并定期写入该窗口。
我显然希望能够在任何机器上运行它,但至少我希望能够在Windows上运行。
我知道有一些GUI库可用(AWT,Swing),但我希望应用程序尽可能轻量级,以便我可以最大化每台计算机上可以拥有的监视器数量。只有在没有其他选择的情况下,我才会使用GUI库。
答案 0 :(得分:2)
首先,如果一个实例运行了很长时间,并且您可能需要同时运行多个实例,则需要实现多线程。特别是,考虑并发性:http://docs.oracle.com/javase/tutorial/essential/concurrency/
接下来,一旦你弄清楚如何在一个单独的线程中运行每个实例,你只需访问Runtime:
Runtime RT = Runtime.getRuntime();
RT.exec("cmd.exe /c start command", null, new File(newDir)); // for example
答案 1 :(得分:1)
有很多GUI库可以做你想要的。 AWT就是一个AWTConsoleWindow。或this一个。