免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 8233 | 回复: 3
打印 上一主题 下一主题

process waitfor的问题。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-11-05 11:47 |只看该作者 |倒序浏览
我的苹果系统是osx10.3。java是1.4.2。使用netbeans5.0作为java swing的开发工具。
现在遇到一个问题。我用getRuntime().exec打开一个外部程序,想等这个被打开的程序结束后,继续运行下面的程序。windows低下,我用process.waitfor()。知道被打开程序关闭为止,再执行process.waitfor()后面对的程序。这个语句在windows下有效果。可是在苹果下就没有效果。程序没有等待,而是直接运行process.waitfor()后的程序了。

String filename = "xxxxxxx";--->苹果下要打开的外部程序。
Process process = Runtime.getRuntime().exec.......。打开这个外部程序。
System.out.println("open");
try{
    process.waitfor();让程序等待
    System.out.println("over");被打开的外部程序关闭后,打印输出over。
}catch(InterruptedException e){
}
程序运行后的打印输出结果是:
open
over
这个时候,被打开的程序还没有被关闭。process.waitfor没有发挥作用。

请高手指教一下。我该怎么实现功能。这个功能我在windows底下是可以实现的,运行没有问题。苹果系统下,虽然可以打开外部程序,可是并没有等待外部程序结束。
高手帮帮忙啊。

论坛徽章:
0
2 [报告]
发表于 2007-11-05 14:53 |只看该作者

论坛徽章:
0
3 [报告]
发表于 2007-11-06 16:45 |只看该作者
用exec()启动有什么特殊方法么?直接指定要启动的第三方程序的路径就可以了。windows底下没有问题。可是到苹果系统下waitfor就不起作用了。
版主老大,知道为什么?请教一下,能教教我么?

论坛徽章:
0
4 [报告]
发表于 2007-11-07 09:40 |只看该作者
版主老大的意思是问题在你的外部程序,而不在Process本身
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP