Filter löschen
Filter löschen

how to run a loop parallel

2 Ansichten (letzte 30 Tage)
Adrian
Adrian am 26 Sep. 2013
Kommentiert: Adrian am 27 Sep. 2013
Hi,
is there a way to run a loop parallel (like a timer would do) to the rest of the programm? I want to start it by a start command and end it by a stop command. (quasi a timer with Period = 0)

Antworten (1)

Jan
Jan am 26 Sep. 2013
No, there is no such method. What about using a timer?
  6 Kommentare
Adrian
Adrian am 27 Sep. 2013
Ok, I created a GUI with GUIDE. Added a Static text field (text1) and a CloseRequestFcn.
Then I added following Code to the generated:
Added to the OpeningFcn:
handles.tim2 = timer('TimerFcn', {@timer2_callback_fcn, handles}, 'Period', 0.001, 'ExecutionMode', 'FixedSpacing');
guidata(hObject, handles);
handles.tim = timer('TimerFcn', {@timer_callback_fcn, handles}, 'ExecutionMode', 'fixedSpacing', 'StartDelay', 1, 'Period', 2);
start(handles.tim);
After that I added the two timer CallbackFcn:
First one:
function timer_callback_fcn(obj, event, handles)
start(handles.tim2);
pause(10);
stop(handles.tim2);
set(handles.text1, 'str', 'stop');
Second one:
function timer2_callback_fcn(obj, event, handles)
set(handles.text1, 'str', 'running');
The CloseRequestFcn I expanded by:
stop(handles.tim2);
stop(handles.tim);
delete(handles.tim2);
delete(handles.tim);
If I run the GUI 'stop' is displayed after 10 seconds . 'running' doesn't appear. Errors aren't displayed.
Added files: - 'testgui.zip' containing 'testgui.fig' and 'testgui.m'
Adrian
Adrian am 27 Sep. 2013

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Startup and Shutdown finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by