我正在制作一个程序(3D Minesweeper),但在检测结果时遇到了问题。我尝试了单独的线程来等待结果,但它不起作用(只是没有)。所以我认为最简单的方法是拥有 2 个单独的程序(不是问题),其中一个运行另一个(使用 args,1.problem)并获取它的 System.exit();(2.problem) 返回的值。我找到了一些解决第一个问题的例子,但不是第二个。有没有合适的方法,还是我必须将结果写入文件或其他东西?顺便说一句,请随意纠正语法,我只是在学习 XD。
问问题
65 次
2 回答
0
从第二个程序启动第一个程序并获得退出值。
进程 myProcess = Runtime.getRuntime().exec(command);
int exitValue=myProcess.exitValue();
于 2015-11-06T14:07:27.413 回答
0
如果你是System.exec ()
用来运行程序的,那么看看waitFor ()
for 的返回值Process
Process p = Runtime.getRuntime().exec("cmd /C dir");
int rc = p.waitFor ();
System.out.println ("Exit code is " + rc);
您也可以查看exitValue ()
进程的运行情况,但您必须确保程序已运行完成,然后才能可靠。
Process p = Runtime.getRuntime().exec("cmd /C dir");
p.waitFor (); // make sure we run to completion
System.out.println ("Exit code is " + p.exitValue ());
于 2015-11-06T14:05:33.323 回答