필터 지우기
필터 지우기

how to run a loop parallel

조회 수: 2 (최근 30일)
Adrian
Adrian 2013년 9월 26일
댓글: Adrian 2013년 9월 27일
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)

답변 (1개)

Jan
Jan 2013년 9월 26일
No, there is no such method. What about using a timer?
  댓글 수: 6
Adrian
Adrian 2013년 9월 27일
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 2013년 9월 27일

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Startup and Shutdown에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!

Translated by