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

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

 Respuesta aceptada

Walter Roberson
Walter Roberson el 23 de Ag. de 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.

Más respuestas (1)

Kye Taylor
Kye Taylor el 23 de Ag. de 2012
Ctrl+C will kill a running script/function

2 comentarios

Yes, but I do not want to stop the script/function. Instead I want to be able to carry out another short function and get back to the algorithm that I interrupted. I don't think CRTL-C would allow that. Thanks anyway.
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.

Iniciar sesión para comentar.

Categorías

Más información sobre Characters and Strings en Centro de ayuda y File Exchange.

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by