接上次的内容,我们在用java调用外部exe,有时会发生exe一闪而过,或者长时间的进程没有内存,cpu变化,看上去好像阻塞了一样,这是因为再调用
process = Runtime.getRuntime().exec("cmd /k dir",null,new File("E:\\profit\\java\\"));
后,还要把他的输出流导出,不然会造成阻塞,代码如下
process = Runtime.getRuntime().exec(path+calParameters.getUWCalculParString(),null,new File(baseDir+"BIN"+File.separator));
}
Runnable ra = new Runnable(){
/*
* this Thread is used for the calcul.exe/uw_calc.exe output,
* @see java.lang.Runnable#run()
*/
public void run(){
InputStream stdin=process.getInputStream();
InputStreamReader isr=new InputStreamReader(stdin);
BufferedReader br=new BufferedReader(isr);
String line=null;
try {
while((line=br.readLine())!=null){
if(getDebug()==1){
MainThread.logger.debug(line);
}
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
};
Thread th = new Thread(ra);
th.start();
红色部分,自己看吧
分享到:
相关推荐
JAVA调用外部程序 用JAVA调用外部程序并截出程序运行结果
F:\Work\Study\功能点技术\java调用可执行文件\Java调用外部程序命令.doc
Delphi XE10 调用外部程序并等待其运行结束
QT通过QProcess调用外部程序 博客地址:https://tinycool.blog.csdn.net/article/details/124359078
java中两种方式调用其他.exe可执行程序
一个简单的例子,C#多线程实现调用外部程序并获取打印结果 一个简单的例子,C#多线程实现调用外部程序并获取打印结果 一个简单的例子,C#多线程实现调用外部程序并获取打印结果 一个简单的例子,C#多线程实现调用...
C#实现异步调用外部程序!
这个Demo介绍了怎样通过程序的URL接口调用外部程序或系统程序,对应博客iOS调用外部程序和系统程序。
Delphi调用外部程序详解Delphi调用外部程序详解Delphi调用外部程序详解Delphi调用外部程序详解Delphi调用外部程序详解
解决Java新建进程问题 Java调用应用程序 可以学会如何使用Java的Runtime类的exec
java调用matlab程序的一个applet-java调用matlab.txt 最近在做java实现多Agent,如有同志可相互切磋,现附上一段java调用matlab程序的程序,希望能帮到有需要的同仁。
通过java应用程序动态调用外部jar文件。
调用外部程序.rar调用外部程序.rar调用外部程序.rar
vc调用外部程序参考vc调用外部程序参考vc调用外部程序参考vc调用外部程序参考vc调用外部程序参考vc调用外部程序参考
Authware查找窗口调用外部程序!!!!!!!
实现qt下点击按钮所实现的外部程序的调用!
UE5调用外部EXE程序
LabWindowsCVI调用外部程序的六种方法源代码
NULL 博文链接:https://dadi520.iteye.com/blog/539524
CVI中如何调用第三方的应用程序,及打开网页,系统应用程序等,包含打开的应用程序是否是最大化