How to save Timer execution time

9 次查看(过去 30 天)
Jun Hao
Jun Hao 2014-9-22
评论: Adam 2014-9-22
I create a Timer function, and I set the TImer to be executed 10 times. When the Timer running, how can I save the 10 execution time to workspace?
function t = Showmylove2MatlabTimer(~,thisEvent)
seconds2Show = 0.01;
totalTimes = 10;
t = timer;
t.UserData = seconds2Show;
t.StartFcn = @bbb;
t.TimerFcn = @(g,~)mylove2Matlab;
t.StopFcn = @blablabla;
t.Period = 0.002;
t.StartDelay = 6;
t.TasksToExecute = totalTimes;
t.ExecutionMode = 'fixedSpacing';
end
function ExTime = mylove2Matlab(~,thisEvent)
n = 1000;
a = unidrnd(n);
b = unidrnd(n);
s = a + b;
ExTime = thisEvent.Data.time;
disp(['I really love Matlab for ' num2str(s) ' years']);
disp(['Time is ' datestr(thisEvent.Data.time, 'dd-mmm-yyyy HH:MM:SS.FFF')]);
end
In this example, I want to save ExTime to workspace every time the function ExTime = mylove2Matlab to be executed. Thank you for your time and answer.

回答(1 个)

Adam
Adam 2014-9-22
Can you not just use t.StopFcn to add the elapsed time to an array of timer values if you pass this array into the StopFcn?
  2 个评论
Jun Hao
Jun Hao 2014-9-22
you mean if I do not use StopFcn I can get the 10 StartFcn execution time ?
Adam
Adam 2014-9-22
No, I mean that StopFcn exceutes every time the timer stops so within your StopFcn you can get hold of this time every time and add it to an ever-expanding or presized (to size 10) array of times.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 App Building 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by