Saving breakpoints in a script

Suppose I put breakpoints in a script. I want to save these breakpoints so that I can reuuse them in a next session.
I have seen
https://stackoverflow.com/questions/12657219/how-to-restore-breakpoints-in-matlab-after-clear-all
Then what would be the specific steps to save breakpoints? Shall I just put
%# store breakpoints
tmp = dbstatus;
save('tmp.mat','tmp')
%# clear all
close all
clear classes %# clears even more than clear all
clc
%# reload breakpoints
load('tmp.mat')
dbstop(tmp)
%# clean up
clear tmp
delete('tmp.mat')
at the beginning of the script?

 Respuesta aceptada

Jan
Jan el 30 de Abr. de 2018
No, do not insert this into the script. Keep the information about debugging and the actual code separated.
When you want to store the breakpoints, call:
status = dbstatus;
save('DBStatus.mat', 'status')
and to restore them, run:
Data = load('DBStatus.mat');
dbstatus(Data.status);
Maybe you want to store this in a function.

5 comentarios

alpedhuez
alpedhuez el 30 de Abr. de 2018
It means I run this code on the command line? What will be the steps?
Jan
Jan el 1 de Mayo de 2018
Editada: Jan el 1 de Ag. de 2022
It depends, on what you want to do exactly. Let me guess this important detail...
function dbstore(Command)
File = fullfile(prefdir, 'DBStatus.mat');
if narging == 0
status = dbstatus;
save(File, 'status');
else
Data = load(File);
dbstop(Data.status); % [EDITED], Typo fixed
end
end
Store this file as "dbstore.m" in one of your user-defined folders. Now call
dbstore
to store the breakpoints and
dbstore restore
(or any other argument) to restore the last saved breakpoints, either after a clear all, dbclear or restart of Matlab.
Soc
Soc el 10 de Oct. de 2019
The loading routine should call
dbstop(Data.status)
to set breakpoints, not "dbstatus".
Omer Ben-Yshai
Omer Ben-Yshai el 31 de Dic. de 2019
right.
Michael Needham
Michael Needham el 1 de Ag. de 2022
This works, except for the last command I used dbstop(DataStat.status);

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Programming en Centro de ayuda y File Exchange.

Productos

Etiquetas

Preguntada:

el 30 de Abr. de 2018

Editada:

Jan
el 1 de Ag. de 2022

Community Treasure Hunt

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

Start Hunting!

Translated by