I tried the approach here, which is to pause for the expected length of someProgram runtime, then kill someProgram. The down side is that each loop iteration now includes a pause command which adds time if someProgram executes without hanging.
Workaround for external program crashing
3 次查看(过去 30 天)
显示 更早的评论
I have a Matlab script that calls an external program someProgram as follows,
eval(['!someProgram.exe ' arg1 ' ' arg2])
where arg1 and arg2 are calculated by my Matlab script, and someProgram is within a try/catch loop in my Matlab script. Occasionally someProgram crashes and hangs and I have to manually close a Windows error window until my Matlab script resumes. I would like my Matlab script to move on to the next loop iteration instead. From Matlab, is it possible to kill the process if it takes more than a certain time? I suspect the solution lies outside Matlab, but any ideas would help.
采纳的回答
Fangjun Jiang
2017-10-11
Can you try to use system()? It returns status that you might be able to use.
0 个评论
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!