我尝试使用PyTorch设置AI。当我从控制台调用我的脚本时,一切都很好。但是当我在 Java 'ProcessBuildera 中调用脚本时,它会完成但永远不会终止......
这是进程生成器代码
String[] cmd = {"python3", "-i" , "AI/Home-System.py",
data.getName().replace(".csv", ""),
"true",
"false"};
ProcessBuilder pb = new ProcessBuilder(cmd);
Process p = pb.start();
希望你能帮助我
编辑:
我找到了另一种解决方案。我在 linux 屏幕中调用此脚本
String[] cmd = {"screen", "-dmS", "AI-" + device,
"python3", "AI/Home-System.py",
data.getName().replace(".csv", ""),
"true",
"false"};
Runtime.getRuntime().exec(cmd);
读取进程的输出流,因为此流的末尾允许ProcessBuilder
退出。或者称ProcessBuilder
inheritIO()
。
然后waitFor()
该过程。
下面是一些显示这些步骤的示例代码。