MATLAB Answers

Can I Use the Special Function Keys to Interrupt a Script?

2 views (last 30 days)
Back in the old QuickBasic and early Visual Basic days I would write code that allow me to interrupt a running algorithm by pressing a special function key. Is there a similar function in today's Matlab?
Thanks,
Dave

Accepted Answer

Walter Roberson
Walter Roberson on 23 Aug 2012
If you have a graphics involved, then you can set a WindowKeyPressFcn callback.
However, handle graphics callbacks are only given control under limited circumstances, such as if there is a pause() or drawnow() call. If your code is pure computation, then if the computation is mostly at the MATLAB level then timers can interrupt them; if the pure computation is built-in or MEX routines then there isn't any way to interrupt other than control-c.

More Answers (1)

Kye Taylor
Kye Taylor on 23 Aug 2012
Ctrl+C will kill a running script/function
  2 Comments
Kye Taylor
Kye Taylor on 23 Aug 2012
Forgive me if you know about breakpoints and using the debugger, but you can place the command
keyboard
in a script, and it will pause execution of the script just like a breakpoint. Althought this requires knowing a priori where you want stop a scripts execution.
Another alternative is to set a conditional/error breakpoint that will pause execution when a condition is met that you specify.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!