主题:如何判断一个进程是否结束
使用intel fortran编写的程序A在程序执行期间,采用systemqq去启动另一个商用计算程序B,目的是想在A中能够使用B生成的结果文件b.dat。
现在遇到问题是,不知道何时B才计算完毕。想通过查询进程B是否存在来判断。但不知道什么语句可实现:查询已知的可执行文件名对应的进程是否存在。
企盼大家给点建议。非常感谢。
我现在的做法是想在B程序执行期间,不停查询其结果文件b.dat是否生成。若生成,表明B进程结束。代码如下,在A程序代码中,写入如下语句
i=systemqq("B.exe")
do while(1)
inquire(file='b.dat',exist=exists)
if(exists) exit
end do
open(10,file='b.dat')
....
...
程序在执行到inquire的时候就会报出读写内存错误。