ProcessBuilder 使用异常问题
我用java的进出管理器调用进程出现问题:源码如下:
try {
List<String> commend=new java.util.ArrayList<String>();
commend.add("D:\\ffmpeg\\bin\\ffmpeg.exe");
commend.add("-i");
commend.add("rtsp://admin:12345@192.168.0.62:554");
commend.add("-f");
commend.add("flv");
commend.add("-r");
commend.add("25");
commend.add("-s");
commend.add("640x480");
commend.add("-an");
commend.add("rtmp://localhost/red5/isok_"+System.currentTimeMillis());
ProcessBuilder builder = new ProcessBuilder();
builder.command(commend);
Process ps = builder.start();
} catch (Exception e) {
e.printStackTrace();
}
启用ffmpeg进程,如果我把上面这段代码放在main函数中是能成功启动进程并工作的,但是如果把这段代码放在spring的容器bean中启动时,进程列表是有进程启动,但是实际工作内容不执行,感觉像挂起状态, 有哪位大虾遇到过 或者 有什么解决方案
后来我在main函数中用debug去调式在启动进程后加个断点 发现 进程的工作内容也是不执行,当跳过断点后就执行了,是不是ProcessBuilder 创建的进程必须等到当前进程工作完后 才启动?