我运行一个matlab脚本(称之为INIT.m),它负责并行工具箱初始化和运行原始脚本 . 现在,有时,由于一些不可预测的数据问题,并行工具箱由于matlabpool作业中的错误而停止(可能) .
我想在发生这种崩溃时重新运行INIT.m .
它可以是另一个matlab脚本,也可以是shell脚本/ java代码 .
任何形式的帮助将不胜感激 .
提前致谢 .
更新(错误声明和环境)
它给出以下错误消息并停止(但不要退出)
MATLAB is exiting because of fatal error ??? Error using ==> parallel_function at 598 The session that parfor is using has shut down
它也说
??? The client lost connection to lab 117. This might be due to network problems, or the interactive matlabpool job might have errored
环境:Linux
1 回答
我'm assuming you'正在运行某种UNIX . 我也假设"crash"你的意思是MATLAB本身就死了 . 在运行MATLAB之前,您可以安装一个钩子来响应信号(使用
trap
):http://www.linuxcommand.org/wss0160.php
信号列表:http://en.wikibooks.org/wiki/Bourne_Shell_Scripting/Debugging_and_signal_handling#System_signals
显然你必须找出杀死你的程序的信号 .