我正在使用system()
从Matlab执行另一个程序。
我在-nodisplay
会话中使用了tmux
模式的Matlab(超过ssh
)。
对system()
的调用需要几分钟才能执行。
如果我在此期间调整tmux
窗口的大小(或者例如拆分窗格),则调用会因以下错误而中断:
>> system('sleep 10');
Error using system
Unexpected system error: bang: poll [4] Interrupted system call
之后,将来所有对system()
的调用都会立即返回,而无需等待该过程完成。
我需要重新启动Matlab以使其再次正常工作。
如果我只是在没有 ssh
的{{1}}会话中直接使用Matlab,那么不会。
如何防止这种情况发生?
tmux
连接丢失(例如计算机睡眠和唤醒),也会发生同样的事情。ssh
,但同样的事情发生在tmux
。