-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathload_variable_with_retry.m
More file actions
58 lines (53 loc) · 1.64 KB
/
load_variable_with_retry.m
File metadata and controls
58 lines (53 loc) · 1.64 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
function variable_data = load_variable_with_retry(app, file_name, variable_name, pause_time)
if nargin < 4 || isempty(pause_time)
pause_time = 1;
end
%%%%A = load_variable_with_retry(app, 'results.mat', 'A', 0.2);
while true
try
if ~isempty(app)
disp_progress(app, ...
"Loading: " + string(variable_name) + " ...")
end
S = load(file_name, variable_name);
variable_data = S.(variable_name);
return
catch
pause(pause_time);
end
end
end
% function variable_data = load_variable_with_retry(app, file_name, variable_name, pause_time)
% %LOAD_VARIABLE_WITH_RETRY Load a variable from MAT-file with retry logic
% %
% % variable_data = load_variable_with_retry(app, file_name, variable_name)
% % variable_data = load_variable_with_retry(app, file_name, variable_name, pause_time)
%
% % Default pause_time = 1 second
% if nargin < 4 || isempty(pause_time)
% pause_time = 1;
% end
%
% retry_load = 1;
%
% while retry_load == 1
% try
% if ~isempty(app)
% disp_progress(app, ...
% strcat('Loading: ', string(variable_name), ' ...'))
% end
%
% % Load requested variable only
% S = load(file_name, variable_name);
%
% % Dynamic field access
% variable_data = S.(variable_name);
%
% retry_load = 0;
%
% catch
% retry_load = 1;
% pause(pause_time);
% end
% end
% end