Matlab timer doesnt work in stand alone application

9 ビュー (過去 30 日間)
E
E 2016 年 5 月 19 日
回答済み: Image Analyst 2016 年 5 月 22 日
Hi Guys,
i have built this application that listens to a certain folder and continuously checks if certain files appear in it. once these files appear i activate another function to process them. I implemented the folder listener using a Timer object with a fixed rate of 30 sec. (i.e - every 30 sec it should check the content of the folder.) Everything works great when i run the code from within Matlab, yet when i compile and then deploy the app the timer only executes once and then exits the program.
any idea what can cause this difference between compiled and un-compiled versions?
system is Ubuntu 14.04,
timer object instance:
myTimer = timer('TimerFcn',@checkFolderForChanges,'Period',h.listenerInterval,'ExecutionMode','fixedSpacing','BusyMode','queue','UserData',userData);
compile arguments:
mcc -mv fileWatch.m
debug lines i added to monitor the timer, from within Maltab:
timer running mode: on
timer tasksExecuted mode: 682
timer running mode: on
timer tasksExecuted mode: 683
stand alone deployed version (exits after 1 timer task execution:
timer running mode: on
timer tasksExecuted mode: 1
vncuser@mathlab:~/visualizer$

採用された回答

Walter Roberson
Walter Roberson 2016 年 5 月 19 日
  3 件のコメント
Walter Roberson
Walter Roberson 2016 年 5 月 21 日
The behavior is not really different. You have to imagine there being a "quit" statement after the last line of a compiled executable. Once it has done its work, it is not going to hang around. The way it knows it has finished is that it reaches the end of the code.
Walter Roberson
Walter Roberson 2016 年 5 月 21 日
uiwait() is a convenience wrapper around waitfor(), which applies to objects and to changes in properties, not just graphics.

サインインしてコメントする。

その他の回答 (1 件)

Image Analyst
Image Analyst 2016 年 5 月 22 日
I'm not sure why your program doesn't work. I have programs that are compiled and use a timer to poll pushbutton switches, and they work fine.

カテゴリ

Help Center および File ExchangeApplication Deployment についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by