结论:
1、如果timer中的任何一个环节,发生堵塞。整个程序都会被堵塞掉。
2、师弟的需求:clean function运行10秒之后,把它给中断掉。无法通过timer完成。
3、当计时器的时间到了的时候,会执行TimerFcn 。但是在TimerFcn 中关闭一个堵塞的timer,却无法实现。
t = timer;
t2 = timer;
t.StartFcn = @(~,thisEvent)disp([thisEvent.Type ' executed '...
datestr(thisEvent.Data.time,'dd-mmm-yyyy HH:MM:SS.FFF')]);
t.TimerFcn = @(~,thisEvent)disp('3 miao finished');
t.StopFcn = @(~,thisEvent)disp([thisEvent.Type ' executed '...
datestr(thisEvent.Data.time,'dd-mmm-yyyy HH:MM:SS.FFF')]);
% t.Period = 2;
% t.TasksToExecute = 3;
t.StartDelay = 3;
t.ExecutionMode = 'singleShot';
start(t);
%%
pause(10000);
disp('finished');
% pause(1000);
% pid = system("matlab -deskno- -sds cleanfun");
%%
% delete(timerfind);