MATLAB Answers

Query event queue

12 views (last 30 days)
Daniel Shub
Daniel Shub on 2 May 2012
Commented: Walter Roberson on 29 Sep 2019
Is it possible to query the event queue (i.e., where callbacks wait for drawnow)?
I have a for loop that takes a ~10 seconds to complete, during this time the user may initiate callbacks from a GUI. The operation of this loop is time sensitive, so I cannot interrupt the loop by completely flushing the event queue.
I have a complicated plan to use a timer object to implement a poor man version of thread switching. I don't want to do "thread switching" if there is no "second" thread, and I think I need to query the event queue to know that.

Answers (1)

Hamid Ramezani
Hamid Ramezani on 29 Sep 2019
This might helo you. This bacically enables the event queue in matlab.
h = addlistener(src,'EventName',@callBackFunction);
h.Recursive = true;
  1 Comment
Walter Roberson
Walter Roberson on 29 Sep 2019
How would you use that to query to find out how many items are on the queue?
Which EventName should be used? GUI interactions are mostly through the Callback property, but there are other important GUI interactions that operate through other callbacks such as WindowButtonPressFcn . The event names are unlikely to be the same for all of them; at the moment I do not know if any of them fire an Event when they occur.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!