我有一个MATLAB脚本,该脚本通过DDE协议调用了一个外部程序,我希望MATLAB等待执行结束,该操作由ddeexec(programName,command)
返回的0/1表示。
尝试使用wait
或waitfor
失败,因为它们收到一个对象,并且我只有一个返回值(是双精度值)。
我的临时解决方案是使用pause(secToPause)
,但这不是一个好的解决方案,因为外部程序的运行时间会发生变化。
请注意,外部程序始终在后台运行,因此检查进程是否已完成也不起作用。
有什么建议吗?
osloFinished = 0; %set var to see if OSLO finished its job
osloFinished = ddeexec(OSLO,osloCommand); %send execution to OSLO
matlabMagicWait %here I want to matlab to stop and wait for osloFinished to change to 1