I also try to store data inside a handle class like this
classdef StorageManagement < handle
% Usages
% instantiate:
% s = StorageManagement(Data)
% ...
% Data = s.GetData()
properties (SetAccess = immutable, NonCopyable = true)
myData;
end
methods
% Constructor
function obj = StorageManagement(Data)
if nargin >= 1
obj.myData = Data;
else
warning('StorageManagement instantiates with empty data');
obj.myData = [];
end
end
function Data = GetData(obj, varargin)
Data = obj.myData;
end
end
end
Then retrieve the data during parallel call with
BigData = myhandleobj.GetData(); % myhandleobj is instance of StorageManagement
That works but the data seems to be broacasted to process. So I don't save anything if I pass BigData directly.
If I implement storage using persistent inside the class, it fails just like persistent inside a standard function as in my original question.