onCleanup - do different things based on how you entered it.

2 views (last 30 days)
Hi, I've got a function where we want to run some code if there is an error, or a Ctl-C, but not if the function exits normally.
If I use try/catch, then Ctl-C doesn't end up in the catch. If I define an onCleanup, then it executes when the function exists normally (which we don't want).
Can you think of a way to handle this situation? Maybe using DBSTACK in the onCleanup to determine how it was entered or something...
Thanks, Eric

Accepted Answer

Walter Roberson
Walter Roberson on 18 Mar 2013
Share a variable with the cleanup routine. Set the variable differently if the routine is exiting normally. Have the cleanup routine test the variable.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!