日期:2014-05-20  浏览次数:20678 次

java中调用.bat文件的执行性能问题
我要在java文件中执行数据库备份的操作,于是新建了一个backup.bat批处理文件,内容如下:
exp system/manager@NBCIQKQ file=f:/dbcopy.dmp log=f:/logfile.log 
单独执行.bat文件时速度很快,只要几秒钟,可是在java中调用时就很慢,快则十几分钟,
慢时要大半个小时,大大降低了程序的性能。
调用方法为:
process = Runtime.getRuntime().exec("f:/backup.bat");
而且也不知道什么时候会执行完毕。

很困惑为什么在java中调用批处理时执行速度会这么慢。
另外我的数据库跟程序在同一个机子上,排除网络问题。
急啊,希望那位大侠能帮我解惑,将万分感激!

------解决方案--------------------
使用异步调用,启动外部命令后就直接返回!

------解决方案--------------------
会不会是你占用着程序操作的文件,造成了锁?