如何解决在进行要求苛刻的计算时,MATLAB会推迟显示调用这是为什么?
我几乎可以肯定这是因为EDT。
这就是drawow()的功能。有关详细说明,请参见Yair Altman的文章。
简介:MATLAB图形是Java Swing,并且操作在特殊的线程-事件调度线程(EDT)上进行。调用drawnow();
刷新事件队列并更新图形窗口。
解决方法
我正在MATLAB中实现算法。它可以计算最短路径等,因此对我的旧计算机要求很高。我在整个程序中放入了disp()调用,以查看所有时间的情况。
但是,当从特别繁重的for循环开始时disp()
,即使循环结束之前似乎也不会调用它。这是为什么?我以为MATLAB确实是按顺序执行的,还是我只是因为太多的计算而使它窒息而使disp()
调用的优先级最低?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。