功能drawnow
导致图形窗口及其子窗口更新,并刷新系统事件队列。
drawnow
由传入事件(例如,鼠标或键事件)生成的任何回调在返回之前被调度。
我有以下脚本:
clear all;
clc;
t = timer;
set(t, 'Period', 1);
set(t, 'ExecutionMode', 'fixedSpacing');
set(t, 'TimerFcn', @(event, data) disp('Timer rollover!'));
start(t);
while(1)
%# do something interesting
drawnow;
end
drawnow
就位后,定时器事件将每秒发生一次。没有它,不会发生回调函数,因为while
循环是“阻塞”的。
我的问题:
1)有没有办法在不更新图形窗口的情况下刷新队列?
2)当我们说“刷新事件队列”时,我们的意思是“执行事件队列中的所有内容”,“执行队列中的下一个并将其他所有内容从队列中删除”,还是完全其他的意思?
我的程序后台发生了来自多个单独计时器的多个回调函数。不执行这些回调之一对我来说不是一个选择。我只是想澄清并确保我做的是正确的事情。